我有一个ICommand属性,如下所示:
private ICommand autoHideCommand;
public ICommand AutoHideCommand
{
get { return autoHideCommand; }
set
{
if (!object.Equals(autoHideCommand, value))
{
autoHideCommand = value;
OnPropertyChanged("AutoHideCommand");
}
}
}
可以找到命令下的实际类here。这是一个相当基本的ICommand实现。
我真的想为这个命令添加一些键盘输入绑定。但实际的实现不支持它,ICommand也不支持。
有没有人举例说明如何在这种情况下添加键盘绑定? (它甚至可能吗?)
注意:我需要在C#代码(而不是XAML)中执行此操作。那是因为我的窗口是动态生成的。
答案 0 :(得分:3)
命令实现不需要知道它的名称(按钮或键盘快捷键等)。
创建Window
时,您需要创建CommandBinding
并将其添加到窗口CommandBindings
。这会将键盘快捷键路由到ICommand
。