Я наткнулся на эту тему, когда искал решение своей проблемы.У меня есть TabControl со многими TabPages.Каждая вкладка настроена на автоматическую прокрутку из-за переполнения содержимого.Проблема, с которой я столкнулся, заключалась в том, что колесо прокрутки мыши не работало бы, если бы у TabPage не было фокуса.Поскольку для каждого нажатия вкладки не было события, это усложняло настройку фокуса для каждой вкладки.Это было не сложно, но задача, тем не менее.Итак, вот мой код (при условии автоматической прокрутки true).
При загрузке формы устанавливает фокус на основной TabPage:
Private Sub frmParent_Load(sender As Object, e As System.EventArgs) Handles Me.Load
TabControl1.TabPages(0).Focus()
End Sub
Устанавливает фокус на текущую TabPage, получая индекс, затем устанавливая фокус.Это вызвано событием TabControl1.SelectedIndexChange.
Private Sub TabControl1_SelectedIndexChanged(sender As Object, e As System.EventArgs) Handles TabControl1.SelectedIndexChanged
Dim intTabIndex As Integer = TabControl1.SelectedIndex
TabControl1.TabPages(intTabIndex).Focus()
End Sub
Я надеюсь, что кто-то найдет это полезным.Это было очень полезно для меня.
Джошуа