2012-10-03 136 views
0

我正在尋找一個解決方案,爲EventToCommand添加修飾符使用mvvm指示燈。我想要實現的是綁定一個命令讓我們說mouseEnter,但只有在按下ctrl的時候。下面我只有一個mouseenter命令。mvvmlight eventtocommand修飾符

<i:Interaction.Triggers> 
    <i:EventTrigger EventName="MouseEnter"> 
    <cmd:EventToCommand Command="{Binding TestCmd}"/> 
    </i:EventTrigger> 
</i:Interaction.Triggers> 

任何想法如何添加鍵盤修改器?

回答

0

我認爲最好的解決方案是使用RelayCommand的CanExecute功能。

的解決方案可能是:

TestCmd= new RelayCommand<MouseEventArgs>(e => 
{ 
    // do your command 
}, e => 
{ 
    return (Keyboard.Modifiers & ModifierKeys.Control) > 0; 
}); 
1

只是這樣做:

TestCmd = new RelayCommand(() => 
{ 
    // command action here 

},() => Keyboard.Modifiers == ModifierKeys.Control);