У меня странная проблема (вероятно, только для того, чтобы понять), почему в тестовом приложении прямоугольник фокуса не отображается, пока я не нажму клавишу табуляции.
Я хочу показать диалог с двумя переключателями и двумя кнопками. Когда я показываю диалоговое окно, я хотел бы видеть прямоугольник вокруг моего первого переключателя. (Чтобы пользователь мог видеть, где находится фокус.) Я заказал элементы управления и установил свойство tabindex от 0 до 4, чтобы они были в правильном порядке. (радиобокс 1 имеет tabindex 0, ...)
Когда я показываю диалоговое окно, первый переключатель имеет фокус, но вокруг него нет фокуса. (Пока я не нажму клавишу табуляции.)
Я создал совершенно пустой проект winforms (Visual Studio 2010), добавил элементы управления и запустил его. Так что вообще ничего особенного.
Может ли кто-нибудь дать мне подсказку, что я делаю неправильно?
Извините, вот код моего примера:
Public Class Form1
Private Sub Button1_Click(sender As System.Object, _
e As System.EventArgs) _
Handles Button1.Click
Me.Close()
End Sub
Private Sub Button2_Click(sender As System.Object, _
e As System.EventArgs) _
Handles Button2.Click
Me.Close()
End Sub
Private Sub Form1_Shown(sender As Object, _
e As System.EventArgs) _
Handles Me.Shown
RadioButton1.Focus()
RadioButton1.Select()
SendKeys.SendWait("{TAB}")
SendKeys.SendWait("+{TAB}")
End Sub
End Class