为什么我会看到多个Systray图标?

Oma*_*eji 12 c# systray

我已经在我的应用程序中添加了Notify图标,并且我经常在系统托盘中看到最多3份通知图标.是否有一个原因?

有没有办法阻止它发生.

在我的应用程序关闭后,这种情况经常持续存在,直到我迷失到系统托架并且系统托架扩展并折叠然后它们全部消失.

Ric*_*ter 22

这是在您调试应用程序时吗?如果是这样,这是因为从系统托盘中删除图标的消息仅在应用程序正常退出时发送,如果由于异常而终止,或者因为从Visual Studio终止它,图标将一直保留到鼠标悬停在它上面.

  • 虽然偶尔移动你的手臂可能是健康的:p (6认同)
  • 是的,但是在一台24英寸的显示器上,这对于鼠标来说真的是一次旅行.;) (2认同)

小智 10

您可以使用父窗口的Closed事件终止图标.这适用于我的WPF应用程序,即使在Visual Studio中测试(在我的情况下为2010):

        parentWindow.Closing += (object sender, CancelEventArgs e) =>
        {
            notifyIcon.Visible = false;
            notifyIcon.Icon = null;
            notifyIcon.Dispose();
        };
Run Code Online (Sandbox Code Playgroud)