C#程序关闭问题!高手请指导一下
我想实现的功能是,当用户点击关闭按钮的时候,弹出询问是否退出。具体代码我已经实现了,可是有BUG会弹出多次询问。this.FormClosing+=newFormClos...
我想实现的功能是,当用户点击关闭按钮的时候,弹出询问是否退出。具体代码我已经实现了,可是有BUG会弹出多次询问。
this.FormClosing += new FormClosingEventHandler(FormClosing);这是窗口启动时的代码。
private void FormClosing(object sender, FormClosingEventArgs e)//退出提示
{
if (DialogResult.Yes == MessageBox.Show("确认退出?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information))
{
Application.Exit();
}
else
{
e.Cancel = true;
}
}
这是事件代码。请高手帮我看看怎么解决? 展开
this.FormClosing += new FormClosingEventHandler(FormClosing);这是窗口启动时的代码。
private void FormClosing(object sender, FormClosingEventArgs e)//退出提示
{
if (DialogResult.Yes == MessageBox.Show("确认退出?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information))
{
Application.Exit();
}
else
{
e.Cancel = true;
}
}
这是事件代码。请高手帮我看看怎么解决? 展开
展开全部
在窗体的closing事件中:
void frm_closing(object sender, FormClosingEventArgs e)
{
if(MessageBox.Show("确认退出?","提示",MessageBoxButtons.OKCancel,MessageBoxIcon.Question,MessageBoxDefaultButton.Button2)==DialogResult.OK)
{
e.Cancel=false;
}
else
{
e.Cancel=true;
}
}
void frm_closing(object sender, FormClosingEventArgs e)
{
if(MessageBox.Show("确认退出?","提示",MessageBoxButtons.OKCancel,MessageBoxIcon.Question,MessageBoxDefaultButton.Button2)==DialogResult.OK)
{
e.Cancel=false;
}
else
{
e.Cancel=true;
}
}
更多追问追答
追问
并不能关闭整个程序啊。我要关闭整个程序啊
追答
这个closing事件写到你的启动主窗体里,看一下。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在if里面使用 System.Environment.Exit(0);来释放资源
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
改成这样就好了:
this.FormClosing -= new FormClosingEventHandler(FormClosing);
this.FormClosing += new FormClosingEventHandler(FormClosing);
this.FormClosing -= new FormClosingEventHandler(FormClosing);
this.FormClosing += new FormClosingEventHandler(FormClosing);
追问
没有效果
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询