Tengo un problema extraño (probablemente solo para entender) por qué en una aplicación de prueba el foco de enfoque no se muestra hasta que presiono la tecla de tabulación.¿Por qué el Rectángulo de enfoque no se muestra hasta que se presiona la tecla Tab?
Quiero mostrar un cuadro de diálogo con dos radio casillas y dos botones. Cuando visualice el diálogo, me gustaría ver un enfoque directo alrededor de mi primer botón de radio. (Para que el usuario pueda ver dónde está el foco). Ordené los controles y configuré la propiedad tabindex de 0 a 4 para que estén en el orden correcto. (radiobox 1 tiene tabindex 0, ...)
Cuando muestro el cuadro de diálogo, la primera radio tiene el foco, pero no tiene foco alrededor. (Hasta que pulse la tecla de tabulación)
Creé un proyecto winforms completamente vacío (Visual Studio 2010), agregué los controles y lo inicié. Entonces no hay nada especial en absoluto.
¿Puede alguien darme una pista de lo que estoy haciendo mal?
Lo sentimos, aquí está el código de mi muestra:
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
Ejem ... me olvidaba decir, que estoy usando Windows 7 (64 bits) – AlexS
Tough error para arreglar, nada de lo que intenté funcionó. –
Hice un poco (mucho) más investigación y descubrí que el envío de una tecla "Tab" al formulario invoca el evento Control.ChangeUICues en el que el indicador UICuesEventArgs.ShowFocus está establecido en verdadero. (http://msdn.microsoft.com/en-us/library/system.windows.forms.control.changeuicues.aspx) Después de que se procesa este evento, se puede ver el foco de enfoque. ¿Alguien sabe cómo puedo activar/invocar este evento directamente? No encontré ninguna propiedad que pueda establecer como verdadera ... – AlexS