【发布时间】:2013-12-09 03:45:54
【问题描述】:
我有这个代码:
private void Form1_Resize(object sender, EventArgs e)
{
if (FormWindowState.Minimized == WindowState)
Hide();
}
private void CloseApplication_Click(object sender, EventArgs e)
{
this.Close();
}
然后我调整隐藏表单的大小或不调整它的大小我用鼠标右键单击托盘图标然后选择关闭应用程序表单关闭应用程序关闭。
但有时应用程序的图标会停留在托盘图标中,只有当我将鼠标光标移到图标上时,他才会消失。 如何确保当我关闭我的应用程序时,托盘图标中的图标会移动/消失?
【问题讨论】:
-
我已经看到系统托盘中的许多不同应用程序都会发生这种情况。我不认为这是您的代码的错误 - 我认为这是 Explorer.exe 中的错误。见forums.devx.com/showthread.php?37092-How-to-refresh-system-tray
-
在调用
Close()之前尝试将this.ShowInTaskbar设置为false。 -
我的许多应用程序(甚至是 Microsoft 的一些应用程序)也看到了这种情况。
-
您忘记调用 NotifyIcon.Dispose() 方法。最好避免将其放在表单上,这样它是自动的。