如何覆盖 Windows 表单中的标准关闭 (X) 按钮
How to Override standard close (X) button in a Windows Form
如何更改用户在 Windows Forms 应用程序(C# 中)中单击关闭(红色 X)按钮时发生的情况?我想添加一个简单的 DialogResult 和 Messagebox 来询问用户是否确定要关闭表单。
您应该处理表单 class 上的 FormClosing 事件。在处理程序中,您可以将 CancelEventArgs.Cancel 属性 的值设置为 true 以防止关闭表单。
示例:
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
if (MessageBox.Show("Close?", "Close", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
e.Cancel = true;
}
您可以在 Windows 表单设计器打开时通过 double-clicking 属性选项卡中的事件创建处理程序方法:
如何更改用户在 Windows Forms 应用程序(C# 中)中单击关闭(红色 X)按钮时发生的情况?我想添加一个简单的 DialogResult 和 Messagebox 来询问用户是否确定要关闭表单。
您应该处理表单 class 上的 FormClosing 事件。在处理程序中,您可以将 CancelEventArgs.Cancel 属性 的值设置为 true 以防止关闭表单。
示例:
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
if (MessageBox.Show("Close?", "Close", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
e.Cancel = true;
}
您可以在 Windows 表单设计器打开时通过 double-clicking 属性选项卡中的事件创建处理程序方法: