我想为两个带有一个快捷方式名称的按钮设置两个快捷方式。
如何检测MVVM中关注哪个控件?
答案 0 :(得分:0)
您可以简单地将热键添加到其存在的逻辑范围内。有很多方法可以处理热键到WPF,但是您的基本标记应该如下所示:
<Window>
<StackPanel>
<local:MyUserControlA>
<local:MyUserControlA.InputBindings>
<KeyBinding Key="Enter" Command="{Binding SaveACommand}" />
</local:MyUserControlA.InputBindings>
</local:MyUserControlA>
<local:MyUserControlB>
<local:MyUserControlB.InputBindings>
<KeyBinding Key="Enter" Command="{Binding SaveBCommand}" />
</local:MyUserControlB.InputBindings>
</local:MyUserControlB>
</StackPanel>
</Window>
如果SaveACommand
具有键盘焦点,则会运行UserControlA
;如果SaveBCommand
具有键盘焦点,则会UserControlB
。