Appelez la commande lorsque la touche "ENTRÉE" est enfoncée dans XAML

Je veux invoquer une commande lorsque la touche ENTRÉE est pressée dans un TextBox. Considérons le code XAML suivant:

<UserControl
     ...
     xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
     ...>    
     ...    
     <TextBox>
          <i:Interaction.Triggers>
               <i:EventTrigger EventName="KeyUp">
                    <i:InvokeCommandAction Command="{Binding MyCommand}"
                                           CommandParameter="{Binding Text}" />
               </i:EventTrigger>
          </i:Interaction.Triggers>
     </TextBox>    
     ...    
</UserControl>

et que MyCommand est comme suit:

public ICommand MyCommand {
     get { return new DelegateCommand<string>(MyCommandExecute); }
}

private void MyCommandExecute(string s) { ... }

Ci-dessus, ma commande est invoquée pour chaque touche. Comment puis-je limiter l'utilisation de la commande à seulement invoquer lorsque la touche ENTRÉE est pressée?

Je comprends qu'avec Expression Blend que je peux utiliser, mais les Conditions de ceux qui semblent se limiter aux éléments et ne peut pas la considérer arguments d'événement.

J'ai également venir à travers SLEX qui dispose de sa propre InvokeCommandAction de mise en œuvre qui est construit au-dessus de la Systems.Windows.Interactivity mise en œuvre et peut faire ce dont j'ai besoin. Une autre considération est d'écrire mon propre déclencheur, mais j'espère que il y a un moyen de le faire sans l'utilisation des boîtes à outils.

source d'informationauteur bitxwise