2014-01-20 18 views
5

Man kann CTRL + N mitWie definiere ich eine Tastenkombination?

<KeyBinding Key="N" Modifiers="Control" Command="local:CustomCommands.MyCommand"/> 

Verknüpfung eine Verknüpfung in WPF definieren nun definiert ist.

Frage: Ist es auch möglich, eine Doppel-Tastenkombination wie Visual Studio 2012 zu definieren?

Beispiel:CTRL + R, A wird verwendet, um alle Komponententests auszuführen.

+0

Ich verpasste ursprünglich den Punkt, dass Sie mehrere Schlüssel, nicht Modifikatoren benötigen. Dies kann gemacht werden, aber nicht leicht. [Hier ist ein Artikel] (http://kentb.blogspot.com/2009/03/multikeygesture.html), der Sie durch es gehen wird. –

Antwort

2

Verwenden Sie Geste in Verbindung mit Key anstelle von Modifikator. Wie pro MSDN:

Wenn ein KeyBinding in Extensible Application Markup Language (XAML) definieren, gibt es zwei Möglichkeiten, um die KeyGesture angeben. Der erste Weg zu einrichten eine KeyBinding in XAML ist definieren das Gesture-Attribut von das KeyBinding-Element, das eine Syntax ermöglicht Schlüssel und Modifikatoren als eine einzige Zeichenfolge, zum Beispiel "STRG + P". Der zweite Weg ist , um das Key-Attribut und die Modifikatoren-Attribute des KeyBinding-Elements zu definieren.

<KeyBinding Gesture="Control+R" Key="A" 
      Command="local:CustomCommands.MyCommand"/> 

Dies wird MyCommand bei ausführen Ctrl+R,A Kombination verwendet wird.

+0

Sind Sie sicher, dass dies nur für die exakte Sequenz funktioniert? Von der gleichen MSDN-Seite: "Sie können möglicherweise Situationen haben, in denen zum Beispiel ein Key-Set zuletzt nur die Key-Komponente einer vorhergehenden Geste überschreibt, aber die Modifizierer der Geste unverändert lassen." – jnovo

Verwandte Themen