Je comprends la méthode standard est par la création de Commandes, puis en ajoutant vos touches de raccourci comme InputGestures. Cela permet de les touches de raccourci de travail, même s'ils ne sont pas branchés à tout contrôle. Et puisque les éléments de menu de comprendre clavier gestes, ils vont automatiquement votre clé de raccourci dans le menu éléments de texte, si vous le crochet de la commande jusqu'à votre élément de menu.
A. Créer statique d'attribut de tenir de commande (de préférence en tant que propriété statique dans la classe que vous créez pour les commandes - mais pour simple exemple, en utilisant seulement statique d'attribut dans la fenêtre .cs):
public static RoutedCommand MyCommand = new RoutedCommand( );
B. Ajouter la touche de raccourci(s) qui doit appeler la méthode:
MyCommand.InputGestures.Add( new KeyGesture( Key.S , ModifierKeys.Control ));
C. Créer de commande de liaison qui pointe vers votre méthode à appeler sur exécuter, placez-le dans les liaisons de commande de l'élément de l'INTERFACE utilisateur sous lequel il doit travailler pour (par exemple, la fenêtre) et de la méthode:
<Window.CommandBindings>
<CommandBinding Command="{x:Static local:MyWindow.MyCommand}" Executed="MyCommandExecuted"/>
</Window.CommandBindings>
private void MyCommandExecuted( object sender, ExecutedRoutedEventArgs e ) { ... }