我正在使用WPF KeyDown事件(來自Windows.Input的KeyEventArgs)。我需要識別何時用戶單獨按下F1和Ctrl + F1。使用WPF KeyDown事件的多個鍵
private void Window_KeyDown(object sender, KeyEventArgs e)
{
if (e.Key==Key.F1 && Keyboard.IsKeyDown(Key.LeftCtrl))
{
MessageBox.Show("ctrlF1");
}
if (e.Key == Key.F1 && !Keyboard.IsKeyDown(Key.LeftCtrl))
{
MessageBox.Show("F1");
}
}
我的問題是,當我按Ctrl + F1平原F1消息框也會觸發。我試圖添加e.Handled Ctrl + F1的情況下,但它沒有幫助。
作品。但仍然不明白爲什麼它會引發我的情況。當我按下F1 Ctrl時,那麼!Keyboard.IsKeyDown(Key.LeftCtrl)應該是假的 – Dork