WPF KeyGestures - 绑定非字母数字键

Gro*_*kys 8 wpf keyboard-shortcuts

应该是一个简单的,但我无法弄清楚如何做到这一点.使用WPF4我想绑定Ctrl+ -缩小和Ctrl+ =放大:

    <KeyBinding Command="{Binding Content.ZoomInCommand}" Gesture="Ctrl+="/>
    <KeyBinding Command="{Binding Content.ZoomOutCommand}" Gesture="Ctrl+-"/>
Run Code Online (Sandbox Code Playgroud)

但是,我收到了错误:在Ctrl+ 的情况下=:

未找到请求值'='.

有任何想法吗?

Gob*_*lin 8

好的 - 事实证明=密钥不存在(你可以通过Key-enumeration 检查- 没有EqualEqualSign的条目)...我使用国际键盘,所以你必须找到你打到的键序列输入=(对我来说,它是丹麦语键盘上的Shift+ D0) - 并使用该键序列.

所以你的XAML应该是(在丹麦):

<KeyBinding Command="{Binding Content.ZoomInCommand}" Gesture="Ctrl+Shift+D0"/>
Run Code Online (Sandbox Code Playgroud)

编辑:我相信美国系统它是OemPlus关键 - 但你可以通过控制台写入来检查它e.Key在关键事件处理程序中的参数)

EDIT2:-关键OemMinus在我的系统上.


Kna*_*bax 8

提示有德语键盘的用户(也许还有其他一些国家):

小键盘键"+"和" - "是"添加"和"减去"

普通键"+"和" - "是"OemPlus"和"OemMinus"

所以

<KeyBinding Gesture = "OemPlus" Command="myCommand" />
Run Code Online (Sandbox Code Playgroud)

如果按主键盘上的"+",将触发命令.