最小化到托盘使表单不可见

Minimize to tray make form unvisible

我正在使用 NotifyIcon 使我的表单最小化到托盘以便在后台工作。

但是下面的代码根本不显示应用程序图标。形式完全不可见。我必须从任务管理器中杀死它。

private void Button1_Click(object sender, EventArgs e)
{
    this.WindowState = FormWindowState.Minimized;
    if (FormWindowState.Minimized == this.WindowState)
    {   
        Hide();
        this.ShowInTaskbar = false;
        notifyIcon1.Visible = true; 
    }
}

可能是什么原因?我想看到我的应用程序图标以重新打开表单。

您需要将 Icon 分配给 NotifyIcon 才能在系统托盘中显示。您还需要将 Visible 设置为 true

您可以在设计时使用 属性 网格设置属性,也可以通过代码设置它们。例如,您可以使用这样的代码:

this.notifyIcon1.Icon = this.Icon;
this.notifyIcon1.Visible = true;

如果不设置icon或者visible不正确,则不会显示icon