29

我想将 C# WinForms 应用程序最小化到系统托盘。我试过这个:

单击按钮时将应用程序最小化到系统托盘?. 我第一次最小化它时,在屏幕上找不到它 - 任务栏/任务栏上方/托盘。

如果我点击 alt tab,我可以在那里看到我的应用程序;如果我 alt tab 进入它并再次最小化它,它会显示在任务栏上方:

最小化

我究竟做错了什么?

4

4 回答 4

41

最小化时隐藏表单然后单击托盘图标后显示的选项怎么样?

在表单调整大小事件中,在那里进行检查并隐藏表单

   private void Form_Resize(object sender, EventArgs e)
    {
        if (WindowState == FormWindowState.Minimized)
        {
            this.Hide();
        }
    }

然后在单击任务栏图标时将其恢复。

    private void notifyIcon_Click(object sender, EventArgs e)
    {
        this.Show();
        this.WindowState = FormWindowState.Normal;
    }
于 2011-06-11T16:21:33.863 回答
10

您需要在表单中添加一个NotifyIcon 。然后,您可以使用 NotifyIcon 的Click事件让它再次将您的属性Visible设置为。Formtrue

于 2011-06-11T16:20:23.097 回答
3

您需要在 NotifyIcon 上添加一个图标才能看到它。

于 2011-06-13T09:32:01.687 回答
0

您必须设置ShowInTaskbar = true表单的属性。它会自动最小化到任务栏。

于 2017-01-23T18:18:06.323 回答