如何在XAML中使用此组合键?
<RoutedUICommand x:Key="GlobalExitCommand" Text="Execute GlobalExitCommand">
<RoutedUICommand.InputGestures>
<KeyGesture>LeftAlt+F1</KeyGesture>
</RoutedUICommand.InputGestures>
</RoutedUICommand>
不允许LeftAlt+F1
。
提前致谢
答案 0 :(得分:1)
LeftAlt
不是有效的ModifierKeys值。有效值为None
,Alt
,Control
,Shift
和Windows
。
因此,您无法在XAML中创建仅接受左 ALT 的KeyGesture
。您可以使用Alt
并处理Executed
事件处理程序中的其余部分:
<Window.Resources>
<RoutedUICommand x:Key="GlobalExitCommand" Text="Execute GlobalExitCommand">
<RoutedUICommand.InputGestures>
<KeyGesture>Alt+F1</KeyGesture>
</RoutedUICommand.InputGestures>
</RoutedUICommand>
</Window.Resources>
<Window.CommandBindings>
<CommandBinding Command="{StaticResource GlobalExitCommand}" Executed="CommandBinding_Executed" />
</Window.CommandBindings>
private void CommandBinding_Executed(object sender, ExecutedRoutedEventArgs e)
{
if (Keyboard.IsKeyDown(Key.LeftAlt))
{
//...
}
}