У меня есть код, который (предположительно) будет захватывать нажатия клавиш. Окно верхнего уровня имеет
Keyboard.PreviewKeyDown="Window_PreviewKeyDown"
и файл CS поддержки:
private void Window_PreviewKeyDown(object sender, KeyEventArgs e) {
if (e.KeyboardDevice.Modifiers == ModifierKeys.Control) {
switch (e.Key) {
case Key.L:
btnPrev_Click(sender, new RoutedEventArgs());
e.Handled = true;
break;
case Key.R:
btnNext_Click(sender, new RoutedEventArgs());
e.Handled = true;
break;
}
}
}
Теперь, когда все работает нормально, оба CTRL L и CTRL R вызывают соответствующие функции.
Как только я изменю проверку модема на использование ModifierKeys.Alt
, он перестает работать. Другими словами, ни ALT L, и ALT R не вызывают функции.
Что мне здесь не хватает?