В моем приложении WPF действует поведение, вызванное клавишами функций (F1 - F12).
Мой код указан в следующих строках:
private void Window_KeyDown(object sender, KeyEventArgs e)
{
switch (e.Key)
{
case Key.F1:
...
case Key.F2:
...
}
}
Это работает для всех F-клавиш, кроме F10. Отладка, я нахожу, что e.Key == Key.System
, когда пользователь нажимает F10.
В определении перечисления F10 = 99
и System = 156
, поэтому я могу исключить его как повторяющееся значение перечисления (например, PageDown = Next = 20
).
Итак, как мне сказать, когда пользователь нажимает F10?
Можно ли проверить вместо Key.System
? Это кажется немного грязным - возможно ли, что Key.System
когда-нибудь возникнет из-за нажатия какого-либо другого ключа? Или есть какая-то настройка где-нибудь, что сделает отчет F10 как Key.F10
?