为什么我的WPF密钥绑定到导航命令不起作用?

时间:2018-09-29 00:50:20

标签: wpf xaml key-bindings

我尝试过:

<Page.InputBindings>
    <KeyBinding Command="{Binding NavigationCommands.BrowseBack}" Key="Esc"/>
</Page.InputBindings>

这:

<Page.InputBindings>
    <KeyBinding Command="NavigationCommands.BrowseBack" Key="Esc"/>
</Page.InputBindings>

但是当我按Escape键时,导航仍不会返回。如何使此键绑定起作用?

1 个答案:

答案 0 :(得分:1)

最有可能是因为页面没有对准焦点。我想您将页面加载到框架中。要检查它是否正常运行,请单击页面中的任意位置,然后按esc。

我知道可能的解决方案是: 1)在页面加载时使用焦点管理器以在页面中设置焦点(而不是窗口焦点)

2)不在页面上而是在窗口上设置绑定。这可能在设计上很棘手。因为如果您加载不同的页面,则必须依赖页面来加载和卸载该事件。

希望有帮助。