C#中点击窗体右上角的X然后询问是否关闭,是就关闭,不是就什么都不做,应该怎么写?

来源:百度知道 编辑:UC知道 时间:2024/05/20 05:19:29
在哪个事件里?应该怎么写?
DialogResult result;
result = MessageBox.Show("您确定要退出吗?", "退出提示", MessageBoxButtons.OKCancel);
if (result == DialogResult.OK)
{

}
询问我知道怎么写,但怎么写,窗体才会关闭,怎么写,才会不关闭??

要定义窗体的FormClosing事件,然后可以通过获取或指示是否应取消事件的值
private void TestForm_FormClosing(object sender, FormClosingEventArgs e)
{
if (MessageBox.Show("确定要退出本程序吗?", "询问", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
{
e.Cancel = false;
this.Dispose(); // 清理正在使用的资源
}
else
{
e.Cancel = true;
}
}

重写close方法