2010-04-12 18 views
11

que tienen una aplicación de Silverlight en el que capto ciertas pulsaciones de teclas como Tab o Ctrl para realizar alguna acción. Sin embargo, quiero ser capaz de manejar varias teclas presionadas al mismo tiempo, como Ctrl + R o algo así. ¿Hay alguna manera de hacer eso en Silverlight? De ser así, ¿cómo?Silverlight manejo de pulsación de tecla múltiples combinaciones

Respuesta

15

Eche un vistazo a ModifierKeys Enumeration para comprobar si hay varias combinaciones de pulsaciones de teclas. Ver Silverlight Keyboard Support para ejemplos de código y más información.

void Canvas_KeyUp(object sender, KeyEventArgs e) 
{ 
    //check for the specific 'v' key, then check modifiers 
    if (e.Key==Key.V) { 
     if ((Keyboard.Modifiers & ModifierKeys.Control) == ModifierKeys.Control) { 
     //specific Ctrl+V action here 
     } 
    } // else ignore the keystroke 
} 
1

Manipulación combinaciones de teclas como Cntrl + X es muy problemático con Silverlight como su ejecución en un navegador que, probablemente, utilizar la mayoría sí Cntrl combinaciones. Entonces, dado que probablemente necesite soportar múltiples navegadores como IE, Firefox, etc., le recomiendo que se dé por vencido.

Por lo tanto, limito las combinaciones de teclas de Silverlight para cambiar solo.

Cuestiones relacionadas