Я хочу определить, когда в приложении WPF нажимается такая комбинация, как Ctrl -C. То, что я прочитал в Интернете, говорит об использовании чего-то вроде следующего в событии KeyDown (или KeyUp ):
if ((Keyboard.Modifiers == ModifierKeys.Control) && (e.Key == Key.S))
{
MessageBox.Show("Save!");
}
Я просто пытаюсь понять, как это работает. Насколько я понимаю, e.Key содержит нажатую клавишу, вызвавшую событие, а Keyboard.Modifiers содержит информацию о состоянии клавиши Control прямо сейчас . Можно ли предположить, что к моменту обработки события KeyDown клавиша Control все еще будет нажата?
Например, я перезапускаю Firefox, и он загружает кучу вкладок, а тем временем я нажимаю Ctrl -S в своем приложении. Есть задержка при переходе к KeyDown, и приложение считает, что нажата только S.
Спасибо