我對鼠標的監聽器右鍵單擊事件觸發關閉CreateContextMenu()
有上下文菜單關閉外線C#鼠標點擊
功能如下:
protected virtual ContextMenu CreateContextMenu()
{
ContextMenu contextMenu = new ContextMenu();
MenuItem ClickHereMenuItem = new MenuItem();
ClickHereMenuItem.Header = "Click Here";
ClickHereMenuItem.Tag = contextMenu;
ClickHereMenuItem.Click += ClickHere_Click;
contextMenu.Items.Add(ClickHereMenuItem);
contextMenu.Items.Add(new Separator());
//Cancel Menu Item
MenuItem cancelMenuItem = new MenuItem();
cancelMenuItem.Header = "Cancel";
cancelMenuItem.Tag = contextMenu;
cancelMenuItem.Click += cancelMenuItem_Click;
contextMenu.Items.Add(cancelMenuItem);
return contextMenu;
}
一切都會按計劃,但只上下文菜單關閉的方式是如果您選擇「取消」菜單項(它只設置contextMenu.IsOpen = false
)。如果用戶單擊控件外部,我也希望菜單關閉。我怎樣才能做到這一點?
你用什麼GUI? Windows窗體? – smhnkmr
@mhn我正在使用WPF GUI – Saggio
我無法重現您的問題:使用您的代碼,我的上下文菜單關閉確定。 所以這個問題必須在你的PreviewMouse(Left)ButtonDown或其他地方。 – GameAlchemist