winforms 关闭是否MessageBox C#

mnowg1ta  于 2022-11-17  发布在  C#
关注(0)|答案(1)|浏览(159)

它(MessageBox)检查文件是否已保存
我想在单击“是”时关闭表单
并在单击“否”时返回应用程序
我找了很多文件和问题,但没有找到答案
我的意思是,有“MessageBox.Show()",难道没有“MessageBox.Close()”吗?
这就是我所拥有的:

private void Form1_FormClosing(object sender, FormClosingEventArgs e)
        {
            var message = "The File Is Not Saved\nDo You Want To Close?";
            var title = "File Not Saved";
            var buttons = MessageBoxButtons.YesNo;

            if (FSaved == false)
            {
                var res = MessageBox.Show(message, title, buttons);
                if (res == DialogResult.Yes)
                {
                    this.Close();
                }
                else if (res == DialogResult.No)
                {
                    return;
                }
            }
        }
5t7ly7z5

5t7ly7z51#

您必须使用事件参数-e取消关闭。

e.Cancel = true;

您也不应该从FormClosing调用Close(),因为它已经在退出。

相关问题