0

我正在尝试在任务栏上显示图标,我就是这样做的。

ResourceManager resManager = new ResourceManager("TestAgent.Properties.Resources", GetType().Module.Assembly);
                notifyicon.Icon = (Icon)resManager.GetObject("TestAgent");
                notifyicon.Visible = true;
                notifyicon.Text = "Test Agent";
                this.Hide();
                this.ShowInTaskbar = false;
                this.SetVisibleCore(false); 

另一方面,当尝试以这种方式从任务栏中删除图标时。

notifyicon.Visible = false;
            notifyicon = null;
            rulehandler = null;

我成功地做到了,但问题是当尝试从任务栏中删除图标时,它成功地从任务栏中删除了图标但没有隐藏图标,当将鼠标悬停在它删除的图标上时。

有没有在没有鼠标悬停的情况下删除图标?我正在使用 c# 以 Windows 形式执行此操作

4

2 回答 2

2

只需丢弃它。

在 Windows 窗体中,您可以订阅全局事件 ApplicationExit ...

Application.ApplicationExit += new EventHandler(this.OnApplicationExit);

private void OnApplicationExit(object sender, EventArgs e) {
     notifyicon.Dispose();
}
于 2012-05-14T07:10:49.430 回答
0

只需notifyIcon.Visible = false;在关闭窗口之前写(Icon 中的大写 I),就可以了。就如此容易。

于 2014-08-21T09:03:47.117 回答