我的程序有事件onClosing
- 只是隐藏它。但我还需要实现程序的关闭 - 尝试使用任务栏通知项的上下文菜单。
代码:
private void FormMainForm_FormClosing(object sender, FormClosingEventArgs e)
{
//canceling closing form
e.Cancel = true;
//hide form
this.WindowState = FormWindowState.Minimized;
}
private void toolStripMenuItem1_Click(object sender, EventArgs e)
{
//hide icon from tray
notifyIcon.Visible = false;
//get current process
Process proc = Process.GetCurrentProcess();
//kill it and close programm
proc.Kill();
}
但也读了一点,kill()
终止所有工作并“杀死”进程,认为关闭程序可能不是正常的方式 - 一些数据可能被破坏或不存储
也尝试使用proc.closeMainWindow();
和proc.Close()
- 但对程序没有影响 - 所有窗口都关闭,但进程仍在运行。
问题:.kill()
这是关闭程序的正确方法,还是有其他方法?