2012-08-22 60 views
2

我有一個ICommand屬性看起來像這樣:如何鍵盤快捷鍵添加到一個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)中執行此操作。這是因爲我的窗口是動態生成的。

回答

3

該命令的實現不需要知道什麼叫它(按鈕或鍵盤快捷方式等)。

當您創建Window時,您需要創建一個CommandBinding並將其添加到窗口的CommandBindings。這會將鍵盤快捷方式路由到您的ICommand