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