我正在尝试将键盘加速器添加到 UWP 应用程序中的 CommandBar 菜单项。这在应用程序启动时工作正常,但在我第一次打开溢出菜单后,加速器停止工作。主要命令(菜单外)似乎不会发生这种情况,只有溢出菜单内的次要命令才会发生这种情况。此外,单击时菜单项仍然可以正常工作。
XAML:
<CommandBar>
<CommandBar.SecondaryCommands>
<AppBarButton Label="Test" Click="AppBarButton_Click">
<AppBarButton.KeyboardAccelerators>
<KeyboardAccelerator Key="A" Modifiers="Control" />
</AppBarButton.KeyboardAccelerators>
</AppBarButton>
</CommandBar.SecondaryCommands>
</CommandBar>
后面的代码:
private void AppBarButton_Click(object sender, RoutedEventArgs e)
{
System.Diagnostics.Debug.WriteLine("test clicked");
}
我在这里遗漏了什么还是这是 UWP 中的错误?
编辑:我做了更多测试,我相当确信这要么是设计缺陷,要么是错误。如果我将按钮设置为主要命令,则加速器在按钮可见时工作,但如果我调整窗口大小以使其移动到溢出菜单,加速器将停止工作。