我试图在WPF KeyGesture
类的帮助下执行一些WPF命令。应用程序正常工作,直到我指定由 Shift 修饰符和字母数字键组成的组合键。例如,在实例化之后:new KeyGesture(Key.M, ModifierKeys.Shift)
抛出异常:
KeyGesture不支持“Shift + M”键和修饰符组合。
Bare Shift 修饰符也不适用于数字(例如 Shift + 2 )。但是, Shift + 插入或 Shift + F1 组合可以完美地工作。只是说清楚, Shift + Ctrl , Shift + Alt 或没有问题Alt + 1 等。
为什么决定禁止 Shift + [字母数字]手势?输入大写字母有什么共同之处吗?是否有与WPF指挥系统一致的解决方法? (注意:在填充文本框时,我不是试图使用 Shift + M 手势,而是在没有文本框时聚焦。)
我似乎只找到一个论坛条目,引发了这个问题。文档搜索失败。开发人员是否明显避免 Shift + [字母数字]?
答案 0 :(得分:3)
参见SO 8251043 - 基本上它不再是一个“手势”它的键绑定 Create a simple, unmodified key binding in WPF