在我的WPF應用程序中,當ContextMenu
正在打開時,我想根據是否按下Alt
鍵來調整其菜單項。WPF:當按下Alt鍵時,我的ContextMenu將不會打開
我有邏輯工作。 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
,同時在TextField
右擊,同樣的事情發生 - 內置剪切/複製/粘貼菜單閃爍開,然後立即關閉。
一個直覺是它與Alt
激活應用程序菜單欄有關。但是應用菜單欄並不適用於我的情況,所以如果解決方案涉及到這個問題,它仍然適用於我。
是的,我想我會按照你的建議使用其他修飾鍵。我已經注意到這種行爲發生在整個Windows上(例如在開始>運行對話框的文本字段中),所以我想至少WPF與其餘的Windows設計工作是一致的... – Ross 2013-03-06 14:13:53