Laden...

MenuItem mit Shortcut-Key

Erstellt von MrSparkle vor 13 Jahren Letzter Beitrag vor 13 Jahren 4.927 Views
MrSparkle Themenstarter:in
5.658 Beiträge seit 2006
vor 13 Jahren
MenuItem mit Shortcut-Key

Hallo,

ich würde gerne ein Shortcut Key einem MenuItem hinzufügen. In der Doku (und allen Tutorials zum Thema) steht, daß dafür folgendes XAML-Attribut ausreichen würde:

InputGestureText="Ctrl+O" 

Hilft aber leider nichts, wenn ich das MenuItem anklicke, wird das daran gebundene Command ausgeführt, aber die Tastenkombination wird einfach vom Programm ignoriert.

Woran könnte es liegen?

Schöne Grüße,
Christian

Weeks of programming can save you hours of planning

C
92 Beiträge seit 2010
vor 13 Jahren

Google sagt:

InputGestureText macht nichts weiter, als einen Text neben dem
Menüeintrag anzuzeigen, der den alternativen Aufruf dieses Befehls
beschreibt. Die Behandlung der Tastenkombination muss dabei von Dir
selbst vorgenommen werden. Die Nutzung von Command Objekten mit
zugewiesener KeyGesture wäre unter WPF eine elegante Möglichkeit das zu
lösen.

Wenn Du diesen Command Deinem Menüeintrag zuweist, kannst Du auch auf
die separate Angabe von InputGestureText verzichten, das wird dann
automatisch übernommen.

mfg Cuin

MrSparkle Themenstarter:in
5.658 Beiträge seit 2006
vor 13 Jahren

Die Behandlung der Tastenkombination muss dabei von Dir
selbst vorgenommen werden.

Genau danach frage ich ja 😃

Es gibt doch bestimmt in XAML eine elegante Möglichkeit, die Shortcuts anwendungsweit (oder für ein Fenster?) festzulegen, ohne im KeyDown-EventHandler jede Tastenkombination einzeln abfragen zu müssen...

Weeks of programming can save you hours of planning

6.911 Beiträge seit 2009
vor 13 Jahren

Hallo,

fürs Programmierspiel? 😉

In Commanding Overview wird darauf eingegangen.
Auch passend: MenuItem.

mfG Gü

Stellt fachliche Fragen bitte im Forum, damit von den Antworten alle profitieren. Daher beantworte ich solche Fragen nicht per PM.

"Alle sagten, das geht nicht! Dann kam einer, der wusste das nicht - und hat's gemacht!"

MrSparkle Themenstarter:in
5.658 Beiträge seit 2006
vor 13 Jahren

Hi Gü,

danke für den Hinweis. Das ganze sieht also so aus:

<Window.InputBindings>
  <KeyBinding Key="B"
              Modifiers="Control" 
              Command="ApplicationCommands.Open" />
</Window.InputBindings>

Programmierspiel? Meinst du diesen Thread?

Schön Feierabend,
Christian

Weeks of programming can save you hours of planning

6.862 Beiträge seit 2003
vor 13 Jahren

Hallo,

Dafür sind noch nicht mal selbsterstellte KeyBindings nötig 😃

Baka wa shinanakya naoranai.

Mein XING Profil.