我的MainWindow有一些KeyBindings:
<Window.InputBindings>
<KeyBinding Command="{Binding NewFileCommand}" Key="{Binding NewFileCommand.Key}" Modifiers="{Binding NewFileCommand.Modifiers}" />
</Window.InputBindings>
他们正在工作,只要我点击某个地方进入我的窗口内容。但是,如果我使用Alt + Tab在应用程序之间切换(假设MS Word和我的应用程序),则快捷方式将不再起作用,直到我再次单击某个视图。在边框上通过鼠标选择应用程序窗口时相同。
如何让它们正常工作?
答案 0 :(得分:0)
在我的复制品中,我使用了来自RelayCommand的MVVM Light,效果很好。我猜你正在使用别的东西。尝试在窗口中添加此代码:
private void Window_Activated(object sender, EventArgs e)
{
System.Windows.Input.CommandManager.InvalidateRequerySuggested();
}
告诉命令框架某些内容发生了变化,它应该重新评估每个命令的CanExecute状态。