Capturar combinación de Teclas (Silverlight)

20 de marzo de 2014

Buen día, hoy anotaré la forma de como capturar una combinación de teclas (Ctrl + Enter)

Para lograr esto tenemos que controlar el evento del KeyDown, en mi caso particular lo hago a un TextBox que es el único control que recibe el enfoque, ya que lo que estoy implementando es una especia de búsqueda y selección, por lo tanto cuando el usuario de ENTER se agregará el elemento seleccionado, y cuando de CTRL + ENTER se saldrá del formulario.

En C#

public void txtBuscar_KeyDown(KeyEventArgs e) 
 { 
   if (Keyboard.Modifiers == ModifierKeys.Control && e.Key == Key.ENTER) 
      { 
        OKButton_Click(Nothing, Nothing); 
      }
   else
      {
        if (e.Key == Key.ENTER)
          {
            agregarALista();
          }
      }
}

En VB

 Private Sub txtBuscar_KeyDown(sender As Object, e As KeyEventArgs)
        If Keyboard.Modifiers = ModifierKeys.Control And e.Key = Key.Enter Then
            OKButton_Click(Nothing, Nothing)
        Else
            If e.Key = Key.Enter Then
                agregarALista()
            End If
        End If
 End Sub

Básicamente detectamos si se presiono alguna tecla "modificadora" (SHIFT, CTRL, ALT) en este caso CTRL en combinación con otra tecla (ENTER)

Saludos.


Gracias por tu comentario...

Lenín Casco

Blog Informático