Reputation: 21522
Question
I would like to assign the keyboard shortcut Ctrl + , (control plus comma) to the "Preferences..." menu item. How do I do that?
There is a Key.OemComma
in the Key
enumeration. I have used Key.OemComma
as shown in the code sample below. That works fine functionality-wise. But GUI-wise: the menu item is displayed as
instead of
Sample Code
InputGestureCollection keyInputs = new InputGestureCollection();
keyInputs.Add(new KeyGesture(Key.OemComma, ModifierKeys.Control));
preferencesCommand = new RoutedUICommand("Preferences...", "Preferences", typeof(MyCommands), keyInputs);
Upvotes: 4
Views: 3643
Reputation: 30418
I think the KeyGesture constructor that takes a display string would work. You could call it like this:
InputGestureCollection keyInputs = new InputGestureCollection();
keyInputs.Add(new KeyGesture(Key.OemComma, ModifierKeys.Control, "Ctrl+,"));
preferencesCommand = new RoutedUICommand("Preferences...", "Preferences", typeof(MyCommands), keyInputs);
Upvotes: 8