我想创建我的自定义命令并将其连接到某个键。为此,我在代码中使用 KeyGesture ,在构造函数中我看到我只能传递一个键(没有修饰键),但在运行时我得到异常,说:
"'None + Q' key and modifier combination is not supported for KeyGesture"
我只是不明白为什么只有一个键有一个构造函数,而且我还需要设置修饰键组合以免出现异常。
从MSDN粘贴:
在大多数情况下,KeyGesture 必须与一个或多个 ModifierKey 相关联。此规则的例外是功能键和数字键盘键,它们本身可以是有效的 KeyGesture。
“普通”键的问题在于区分实际的按钮按下和快捷方式。例如,如果您有一个文本框,则不能使用带有手势 Q 的命令来执行与插入字符 Q 不同的操作。如果您想要类似的操作,请使用 KeyDown/Up 命令和您自己的命令调用。