Как свести к минимуму приложение WinForms в области уведомлений?
Я хочу свернуть приложение С# WinForms на системный трей. Я пробовал это:
Применить приложение к системному лотку при нажатии кнопки?. В первый раз я минимизирую его, его нигде не найти на экране - панель задач/над панелью задач/лотком.
Если я нажму на alt tab, я увижу там свое приложение; если я вставляю в нее вкладку и сворачиваю ее снова, она появляется над панелью задач:
![minimize minimize]()
Что я делаю неправильно?
Ответы
Ответ 1
Как насчет возможности скрытия формы при свертке, а затем показывается, как только вы нажмете на значок в трее?
В форме изменения размера выполните проверку там и скройте форму
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;
}
Ответ 2
Вам нужно добавить NotifyIcon в вашу форму. Затем вы можете использовать событие Click NotifyIcon, чтобы снова установить свойство Visible
на Form
на true
.
Ответ 3
Вам нужно добавить значок NotifyIcon, чтобы он был видимым.
Ответ 4
Вы должны установить свойство ShowInTaskbar = true
вашей Формы. Он автоматически сводится к панели задач.