Есть много вопросов о SO, которые задают одно и то же сомнение. Решением для этого является установка
notifyIcon.icon = null
и вызов Dispose
для него в событии FormClosing.
В моем приложении такой формы нет, но есть значок уведомления, который обновляется в Events.
При создании я скрою свою форму и создаю ShowInTaskbar
свойство false
. Следовательно, я не могу иметь события FormClosing или FormClosed.
Если это приложение получает событие для выхода, оно вызывает Process.GetCurrentProcess().Kill();
для выхода.
Я добавил notifyIcon.icon = null
, а также Dispose перед убийством, но значок остается на панели задач до тех пор, пока я наведите указатель мыши на него.
EDIT. Если я предполагаю, что это поведение вызвано вызовом GetCurrentProcess().Kill()
, есть ли элегантный способ выйти из приложения, которое очистит все ресурсы и удалит значок из панели задач.