窗口关闭事件winform
时间: 2024-10-16 18:14:53 浏览: 44
在Windows Form应用程序中,窗口关闭事件通常发生在用户试图通过点击关闭按钮(X图标)、按下Alt+F4组合键或者直接拖动窗口到屏幕边缘准备最小化或关闭的时候。这个事件是由Form类提供的,它的名称通常是`FormClosing`或`FormClosed`。这里分别简述这两种情况:
1. `FormClosing`事件:
这个事件在窗口即将关闭之前触发,即用户点击关闭按钮时。你可以在这个时候阻止窗口的关闭、保存数据或者做其他的清理工作。事件的处理方法通常会接受一个`EventArgs`类型的参数,比如`FormClosingEventArgs`,其中有一个`Cancel`属性,你可以设置它来阻止窗口关闭。
示例:
```csharp
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
// 检查是否需要保存数据
if (ShouldSaveData())
{
e.Cancel = true; // 阻止窗口关闭,然后执行保存操作
}
}
```
2. `FormClosed`事件:
这个事件在窗口完全关闭之后触发,这意味着所有的关闭过程都已经完成。此时无法阻止窗口关闭,所以一般用于做一些最终的清理工作,如释放资源。
示例:
```csharp
private void Form1_FormClosed(object sender, FormClosedEventArgs e)
{
// 清理资源或其他无需阻塞的操作
CloseResources();
}
```
阅读全文