如何给特定的键盘键添加附加条件到WPF MouseLeftButtonDown
事件处理程序?WPF中的Ctrl键按下条件MouseLeftButtonDown事件处理程序
例如按Ctrl +关键
private void Grid_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
...
}
如何给特定的键盘键添加附加条件到WPF MouseLeftButtonDown
事件处理程序?WPF中的Ctrl键按下条件MouseLeftButtonDown事件处理程序
例如按Ctrl +关键
private void Grid_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
...
}
private void Grid_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) {
if(Keyboard.IsKeyDown(Key.LeftCtrl) || Keyboard.IsKeyDown(Key.RightCtrl)) {
MessageBox.Show("Control key is down");
} else {
MessageBox.Show("Control key is up");
}
}
如果你想只检测改性剂,还可以使用:
if (Keyboard.Modifiers == ModifierKeys.Control) {}
if (Keyboard.Modifiers == ModifierKeys.Shift) {}
等更多here。
在.NET 4.0中,你可以使用:
Keyboard.Modifiers.HasFlag(ModifierKeys.Control)
该解决方案是简单 – 2015-01-03 02:13:05
不要忘了'ModifierKeys'是一个标志枚举。所以,正确检查按Ctrl是'if((Keyboard.Modifiers&ModifierKeys.Control)== ModifierKeys.Control){}' – 2015-10-22 14:21:52