我有一个有六个按钮的 WPF 屏幕。我想将每个与键绑定(bind)相关联。它们都是通过 MVVM 驱动的 ICommand。
我目前将键绑定(bind)绑定(bind)到事件而不是实际按钮:
<UserControl.InputBindings>
<KeyBinding Key="N" Command="{Binding MyCommand}"/>
但是,要使任何键绑定(bind)工作,我必须设置至少 1 个按钮来关注代码隐藏。我真的不想这样做,因为每个按钮/命令对于它是否处于事件状态都有不同的规则,而且我有我希望在页面加载时不活动的焦点动画。
这是可能的还是我必须集中注意力?
最佳答案
您只需将 usercontrol 的 focusable 设置为 true,因为某些元素默认情况下不会将其设置为 true
<UserControl Focusable="True">
然后你必须在用户控件的加载事件中设置 this.Focus()
关于wpf - 没有任何焦点的键绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8128898/