【发布时间】:2012-04-30 17:28:26
【问题描述】:
我想检测何时在 WPF 应用程序中按下 Ctrl-C 之类的组合。我在网上看到的内容是在 KeyDown(或 KeyUp)事件中使用类似以下内容:
if ((Keyboard.Modifiers == ModifierKeys.Control) && (e.Key == Key.S))
{
MessageBox.Show("Save!");
}
我只是想了解它是如何工作的。据我了解,e.Key 包含触发事件的按下键,Keyboard.Modifiers 包含有关现在控制键状态的信息。假设在处理 KeyDown 事件时 Control 键仍处于关闭状态是否安全?
例如,我重新启动 Firefox,它会逐渐加载一堆标签,同时我在我的应用程序中按了 Ctrl-S。到达 KeyDown 有延迟,应用程序认为只是按下了 S。
谢谢
【问题讨论】:
标签: wpf keyboard-input