任务状态区域中的多个NotifyIcon图像

时间:2018-06-12 10:54:17

标签: wpf notifyicon

我有一个WPF应用程序,我喜欢在用户关闭主窗口时保持静默运行。我在任务状态区域使用NotifyIcon执行此操作,并在我的s='Equation~\ref{XX} Table~\ref{XX} and Figure~\ref{XX}' echo "$s" | sed 's#\(Equation~\)\(\\ref{[^{}]*}\)#\1(\2)#g' # => Equation~(\ref{XX}) Table~\ref{XX} and Figure~\ref{XX} 中使用它:

App.xaml.cs

然而,在VS2017中调试关闭并重新启动应用程序几次后,我看到了多个图标,其中除了活动图标之外的所有图标都在鼠标悬停时消失。我注意到这是我使用的一些其他应用程序的错误,我还没有自己开发。

我该如何防止这种情况?

1 个答案:

答案 0 :(得分:1)

如果退出程序而不先隐藏图标,

NotifyIcon会将其图标留下。

当然,你将它隐藏在ExitApplication中。我怀疑在调试时,你并不总是通过选择菜单上的Exit项来退出程序,而只是停止Visual Studio。这就是孤儿图标被遗忘的原因。

这在开发中并不罕见,但它不会影响您的用户,除非他们使用任务管理器强制立即停止您的程序。

如果它困扰你,你可以写一个global exception handler(你应该做的事情),在那个处理程序中你可以隐藏图标,先注意确保它仍然存在。

当然,如果您在Visual Studio中中断异常并且突然终止程序,那么即使该全局异常处理程序也不会隐藏NotifyIcon。