4 ответов:
использовать класс
Keyboard. ИспользуяKeyboard.IsKeyDownвы можете проверить, если контроль, Shift, Alt-это сейчас.Смены:
if (Keyboard.IsKeyDown(Key.LeftShift) || Keyboard.IsKeyDown(Key.RightShift)) { /* Your code */ }Контроль:
if (Keyboard.IsKeyDown(Key.LeftCtrl) || Keyboard.IsKeyDown(Key.RightCtrl)) { /* Your code */ }Для Alt:
if (Keyboard.IsKeyDown(Key.LeftAlt) || Keyboard.IsKeyDown(Key.RightAlt)) { /* Your code */ }
есть:
// Have to get this value before opening a dialog, or user will have released the control key if ((Keyboard.Modifiers & ModifierKeys.Control) == ModifierKeys.Control) { }
private bool IsShiftKey { get; set; } private void OnPreviewKeyDown(object sender, KeyEventArgs e) { IsShiftKey = Keyboard.Modifiers == ModifierKeys.Shift ? true : false; if ((Key.Oem3 == e.Key || ((IsShiftKey && Key.Oem4 == e.Key) || (IsShiftKey && Key.Oem6 == e.Key) || (IsShiftKey && Key.Oem5 == e.Key)) && (validatorDefn as FormatValidatorDefinition).format == "packedascii")) { e.Handled = true; } }
а также:
Если мой.Компьютер.Клавиатура.Тогда сдвиг вниз ...
мой.Компьютер.Клавиатура.CtrlKeyDown
мой.Компьютер.Клавиатура.AltKeyDown
Comments