Principales respuestas
Evento LostFocus o similar

Pregunta
-
Muy buenas, estoy construyendo un menú desplegable, que es un panel en cuestión, con controles dentro y lo que quiero hacer es que cuando el mouse cliquea en cualquier otro lado (o sea que el panel pierde el foco) se oculte.
Probé con el evento Leave y MouseCapturedChanged y no resulto.
Estuve buscando y no encontré nada y no quiero tener que andar escribiendo el evento clic de cada otro control, se puede hacer esto?
Desde ya, muchas gracias
Respuestas
-
Hola SalvadorB,
[-] ... o sea que el panel pierde el foco
Bueno solo respondí a tu pregunta, ya que este evento es el que se ejecutaría en ese caso. No obstante 'como no sé como está estructurado tu menú' si pusieras una imagen para tener una mayor abstracción de lo que desees hacer, pueda plantearte algunas soluciones específicas.
Saludos.
JC NaupaCrispín
Lima - Perú
La magia no existe, la programación SI- Marcado como respuesta Laura CeglzModerator lunes, 31 de octubre de 2016 15:37
Todas las respuestas
-
Hola SalvadorB,
Debes usar el evento MouseLeave del panel, si quieres ocultar el panel mediante el evento podrías hacer :
Private Sub Panel1_MouseLeave(sender As Object, e As EventArgs) Handles Panel1.MouseLeave CType(sender, Panel).Hide() End Sub
Te preguntarás porque no funciona el Leave, simple ya que el Panel nunca se vuelve el control activo del formulario (ya que no puedes establecerle el foco).
Saludos.
JC NaupaCrispín
Lima - Perú
La magia no existe, la programación SI -
-
Hola SalvadorB,
[-] ... o sea que el panel pierde el foco
Bueno solo respondí a tu pregunta, ya que este evento es el que se ejecutaría en ese caso. No obstante 'como no sé como está estructurado tu menú' si pusieras una imagen para tener una mayor abstracción de lo que desees hacer, pueda plantearte algunas soluciones específicas.
Saludos.
JC NaupaCrispín
Lima - Perú
La magia no existe, la programación SI- Marcado como respuesta Laura CeglzModerator lunes, 31 de octubre de 2016 15:37