我已将键绑定绑定到我的wpf主窗口,如下所示,
<Window.InputBindings>
<KeyBinding Key="F2" Command="{Binding TestCommand}"/>
</Window.InputBindings>
通常它执行得很好。如果打开任何新的子窗口(当前已关注),则表示主窗口键绑定不起作用。
我知道,键绑定只会针对焦点项目执行,但是这里我想执行即使它没有集中。有任何方法可以做到这一点,如果有可能请与我分享你的想法。
这对我来说是一个严重的问题。
任何人请提供您的建议吗?
答案 0 :(得分:1)
WPF Behavior: Global Application Shortcut Keys
似乎是你在寻找什么。我对作者的代码进行了一些小的修改,以获得您所需的功能(而不是传递InputBindings
集合,让Behavior
直接从AssociatedObject
中选择它。也取出了需要修改键的限制,虽然我建议你仔细阅读文章中作者的注释并将其纳入你的要求)
Sample download for your requirements
^^我可以得到你所要求的行为,但是要通过Behavior<T>
来看看你是否可以更好地为自己进行优化(我实际上只看到了与你的具体要求有关的东西。)< / p>