3

我已将键绑定绑定到我的 wpf 主窗口,如下所示,

<Window.InputBindings>
    <KeyBinding Key="F2" Command="{Binding TestCommand}"/>
</Window.InputBindings>

通常它执行得很好。如果打开了任何新的子窗口(当前焦点),则表示主窗口键绑定不起作用。

我知道,键绑定只会对焦点项目执行,但在这里我想执行,即使它没有焦点。任何方式来做到这一点,如果可能的话,请与我分享你的想法。

这对我来说是个严重的问题。

有人请提供您的建议吗?

4

1 回答 1

1

WPF 行为:全局应用程序快捷键

似乎是您正在寻找的东西。我对作者的代码进行了一些小修改以获得您所需的功能(而不是传入一个InputBindings集合,而是直接Behavior从集合中选择它AssociatedObject。还去掉了需要修饰键的限制,虽然我建议你通读作者的文章中的注释并将其纳入您的要求)

根据您的要求下载样本

^^ 我可以得到您所需的行为,但是请Behavior<T>仔细检查您是否可以为自己更好地优化它(我实际上研究的只是与您的特定要求相关的东西。)

于 2013-08-01T16:32:39.770 回答