读书人

程序无法退出求解!解决办法

发布时间: 2012-02-16 21:30:36 作者: rapoo

程序无法退出,求解!
我程序Form1上有NotifyIcon1,包含ContentMenuStrip1,里面含 <退出> 选项,

现在我关闭Form1,在FormClosing事件里写入
e.Cancel=true;
this.Hide();

主界面退出了,NotifyIcon1不退出,现我再点NotifyIcon1上的 <退出> 按钮,结果程序不退出,退出代码是:
Application.Exit();

请问如何解决,我要点 <退出> 时程序能退出,急....

[解决办法]
不知道是不是意思
Try
If MsgBox( "你定退出本系? ", MsgBoxStyle.Exclamation + MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then
Application.Exit()
Else
e.Cancel = True
End If
Catch ex As Exception
MsgBox(ex.Message.ToString, MsgBoxStyle.Exclamation, "System Informaiton! ")
End Try
[解决办法]
现在我关闭Form1,在FormClosing事件里写入
e.Cancel=true;
this.Hide();

主界面退出了,NotifyIcon1不退出,现我再点NotifyIcon1上的 <退出> 按钮,结果程序不退出,退出代码是:
Application.Exit();

还是会引发
FormClosing事件,e.Cancel里加个判断退出从哪发出的
[解决办法]
判断一个是哪里调用的FormClosing事件,我的测试代码

bool ex;
private void Form1_Load(object sender, EventArgs e)
{
ex = false;
}
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
if (ex)
{
Application.Exit();
}
else
{
e.Cancel = true;
this.Hide();
}
}
private void toolStripMenuItem1_Click(object sender, EventArgs e) //NotifyIcon1的ContentMenuStrip1
{
ex = true;
Application.Exit();
}

读书人网 >C#

热点推荐