Способы перехвата нажатий клавиш в приложении WPF - PullRequest
4 голосов
/ 15 апреля 2011

Каков наилучший метод для перехвата нажатий клавиш и их обработки в приложении WPF, избегая контроля с фокусом при нажатии клавиши?

Мне нужно, чтобы приложение обрабатывало последовательность нажатий клавиш (включая клавиши со стрелками) и избегало контроля с фокусом (т.е. просмотра дерева), получающего события нажатия клавиш. Я видел способы сделать это с помощью взаимодействия, но надеялся, что это было встроено в приложение WPF?

Спасибо.

1 Ответ

6 голосов
/ 15 апреля 2011

Вы можете прикрепить к событию PreviewKeyDown корневого элемента в вашем приложении, которым обычно является Window.Если вы установите для e.Handled значение true, то вы, как правило, не сможете получить что-либо еще для PreviewKeyDown или события KeyDown.

Кроме того, вам может потребоваться обработать событие PreviewTextInput , так какэто то, что текстовые поля или другие редакторы обычно используют.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...