【发布时间】:2014-01-04 02:14:38
【问题描述】:
我们使用NotifyIcon 在用户收到需要他们注意的新消息时提醒他们。如果其他人先收到消息,通知图标应该再次隐藏,但是我在弄清楚如何从后面的代码中关闭气球时遇到问题。
我的代码如下所示:
myNotifyIcon.ShowBalloonTip(2000, title, message, icon);
我已经尝试了找到here 的建议,但没有一个适合。
使用
myNotifyIcon.Visible = true不会隐藏它使用
myNotifyIcon.Visible = false; myNotifyIcon.Visible = true;会隐藏它,但它也会隐藏托盘中的图标,当它再次显示时,它会显示一个不同的位置。myNotifyIcon.Show(0)不是有效方法myNotifyIcon.ShowBalloonTip(0)或myNotifyIcon.ShowBalloonTip(1)似乎不起作用,因为气球只是显示出来并且似乎根本不会自行消失。
我阅读了 this question 关于使用 WinAPI 查找窗口并向其发送 WM_CLOSE 消息的信息,但我不太确定如何可靠地做到这一点。
如何从后面的代码中关闭NotifyIcon?
【问题讨论】:
-
你试过 notifyIcon.Icon = null;
-
本机winapi函数不支持。粗略的解决方法是处理 NotifyIcon。
-
@HighCore 是的,很遗憾,我得到了一份新工作,它正在使用 WinForms。不过,我希望将来在某个时候回到 WPF :)
-
@HansPassant 那不会完全摆脱系统托盘中的图标吗?
标签: c# .net winforms .net-3.5 notifyicon