我在wpf应用程序中使用键绑定时遇到问题, 但是让我们从头开始:
我有一个窗口,其中包含各种文本框和tabcontrol。 tabcontorl由两个选项卡组成。其中一个选项卡包含一个包含0到n项的数据网格。如果datagrid包含至少一个项目,则用户可以从基础ObservableCollection中删除所选项目。
如果我使用我为此设计的按钮,一切正常。但我也希望用户能够通过键绑定删除所选项目。
因此,我在窗口中声明了以下键绑定(用户应该能够使用键绑定,无论哪个控件具有焦点)。
<Window.InputBindings>
<KeyBinding Key="Right" Modifiers="Control" Command="{Binding CmdRemove}" />
</Window.InputBindings>
要执行的命令是ICommand类型并绑定到窗口的视图模型。
所以现在我失去了这一点:
如果标签项具有焦点,则键绑定仅有效。 如果焦点位于窗口的其他控件上(然后应移除最后一个选定的项目) ,也不,如果要删除的项目是直接在DataGrid。
我错过了一些关键的东西吗?
提前致谢。