【发布时间】:2010-11-19 12:13:20
【问题描述】:
在我的WPF 应用程序中,如何在鼠标事件处理程序中获取 shift、ctrl 和 alt 键的状态?我似乎记得在MFC 中,您可以从鼠标事件中获取该信息。
【问题讨论】:
标签: c# wpf mouseevent
在我的WPF 应用程序中,如何在鼠标事件处理程序中获取 shift、ctrl 和 alt 键的状态?我似乎记得在MFC 中,您可以从鼠标事件中获取该信息。
【问题讨论】:
标签: c# wpf mouseevent
假设您仍在鼠标事件处理程序中,您可以检查Keyboard.Modifiers 的值。我认为无论如何都无法从事件本身获取修饰符信息,因此您必须直接询问键盘。
【讨论】:
根据安迪的回答,您使用 Keyboard.Modifiers。我想我会发布一个小例子
在你的事件处理程序中这样的东西应该可以工作:
private void MyExampleButton_Click(object sender, RoutedEventArgs e)
{
if ((Keyboard.Modifiers & ModifierKeys.Control) > 0) {
System.Diagnostics.Debug.WriteLine("Control is pressed");
} else {
System.Diagnostics.Debug.WriteLine("Control is NOT pressed");
}
}
问候, 迈克
【讨论】: