在我的 WPF 应用程序中,当 aContextMenu
打开时,我想根据是否Alt
按下键来调整其菜单项。
我有逻辑工作。XAML:
<my:Control ContextMenuOpening="MyContextMenu_Opening" />
代码:
private void MyContextMenu_Opening(object sender, RoutedEventArgs args) {
bool isAltDown = Keyboard.IsKeyDown(Key.LeftAlt);
/* tweak menu items here */
}
我的问题是当Alt
按键被按下时,上下文菜单打开然后立即关闭(我可以在它打开的瞬间看到我的逻辑至少在工作)。
我想知道这是否是 WPF 的“功能”,因为如果我Alt
在右键单击 aTextField
的同时按住,也会发生同样的事情 - 内置的剪切/复制/粘贴菜单闪烁打开然后立即关闭。
一种预感是它与Alt
激活应用程序菜单栏有关。但是应用程序菜单栏不适用于我的情况,所以如果解决方案涉及到弄乱它,它仍然对我有用。