我就不明白了...............是和否程序都分不开。
private void frmFirst_FormClosed(object sender, FormClosedEventArgs e){
if (MessageBox.Show("确认退出吗?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes)
{
Application.Exit();
}
}
我点否,系统也退出来了。为什么??????????????????? --------------------编程问答-------------------- 我点不退出.看看你的方法是在哪个事件里吧 --------------------编程问答-------------------- application --------------------编程问答-------------------- if (MessageBox.Show("确认退出吗?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes)
{
Application.Exit();
}
else
{
e.Cancel = true;
} --------------------编程问答-------------------- 该方法停止在所有线程上运行的所有消息循环,并关闭应用程序的所有窗口。该方法并不强制应用程序退出。Exit 方法通常从一个消息循环内调用,该方法强制 Run 返回。若要只退出当前线程的某个消息循环,请调用 ExitThread。
警告 当调用 Application.Exit 方法以退出应用程序时,不引发 Form.Closed 和 Form.Closing 事件。如果在必须执行的其中一个事件中有验证代码,则在调用 Exit 方法之前,应分别为每个打开的窗体调用 Form.Close 方法。 --------------------编程问答-------------------- private void frmFirst_FormClosed(object sender, FormClosedEventArgs e)
{
if (MessageBox.Show("确认退出吗?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) != DialogResult.Yes)
{
e.Cancel = true;
}
}
个人认为不需要加上Application.Exit(); --------------------编程问答-------------------- FormClosing,not FormClosed --------------------编程问答-------------------- “System.Windows.Forms.FormClosedEventArgs”并不包含“Cancel”的定义 --------------------编程问答-------------------- wzd24(牧野)(衣带渐宽终不悔,为伊消得人憔悴)
正解
不过应该是在这个事件里
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
DialogResult diaresult = MessageBox.Show("确认退出吗?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
if (diaresult != DialogResult.Yes)
{
e.Cancel = true;
}
}
补充:.NET技术 , C#