WPF 托盘图标右键弹出的ContextMenu如何关闭
我在托盘加入了NotifyIcon控件,在Click事件中加入了contextMenu.IsOpen=true;这样来打开右键菜单。我想在弹出菜单后,鼠标点击其他位置时,...
我在托盘加入了NotifyIcon控件,在Click事件中加入了contextMenu.IsOpen=true;这样来打开右键菜单。
我想在弹出菜单后,鼠标点击其他位置时,菜单自动消失,请问怎么做?
我的系统托盘里,其他软件图标都是右键点击后,弹出菜单,点击其他位置菜单消失。
我只能实现右键点击弹出菜单,但是点击其他位置菜单不消失,怎么办?我尝试了菜单在LostFocus时context.IsOpen=false;这样也不行。
谢谢~! 展开
我想在弹出菜单后,鼠标点击其他位置时,菜单自动消失,请问怎么做?
我的系统托盘里,其他软件图标都是右键点击后,弹出菜单,点击其他位置菜单消失。
我只能实现右键点击弹出菜单,但是点击其他位置菜单不消失,怎么办?我尝试了菜单在LostFocus时context.IsOpen=false;这样也不行。
谢谢~! 展开
2个回答
展开全部
NotifyIcon里面有一个ContextMenuStrip属性,直接设置这个属性就可以了,不要在click事件中设置,这是我以前写的一个项目中截的,粘给你看看:
System.Windows.Forms.ContextMenuStrip contextMenu = new System.Windows.Forms.ContextMenuStrip();
System.Windows.Forms.ToolStripMenuItem item1 = new System.Windows.Forms.ToolStripMenuItem();
item1.Click += new EventHandler(item1_Click);
item1.Text = "显示主面板";
System.Windows.Forms.ToolStripMenuItem item2= new System.Windows.Forms.ToolStripMenuItem();
item2.Text = "退出";
item2.Click += new EventHandler(item2_Click);
contextMenu.Items.Add(item1);
contextMenu.Items.Add(item2);
this.notifyIcon.ContextMenuStrip = contextMenu;
System.Windows.Forms.ContextMenuStrip contextMenu = new System.Windows.Forms.ContextMenuStrip();
System.Windows.Forms.ToolStripMenuItem item1 = new System.Windows.Forms.ToolStripMenuItem();
item1.Click += new EventHandler(item1_Click);
item1.Text = "显示主面板";
System.Windows.Forms.ToolStripMenuItem item2= new System.Windows.Forms.ToolStripMenuItem();
item2.Text = "退出";
item2.Click += new EventHandler(item2_Click);
contextMenu.Items.Add(item1);
contextMenu.Items.Add(item2);
this.notifyIcon.ContextMenuStrip = contextMenu;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询