如何将键盘快捷方式添加到ICommand对象

时间:2012-08-22 21:03:43

标签: c# .net wpf data-binding wcf-binding

我有一个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)中执行此操作。那是因为我的窗口是动态生成的。

1 个答案:

答案 0 :(得分:3)

命令实现不需要知道它的名称(按钮或键盘快捷键等)。

创建Window时,您需要创建CommandBinding并将其添加到窗口CommandBindings。这会将键盘快捷键路由到ICommand