订购程序后调用几个方法关闭

时间:2013-04-02 14:15:56

标签: c# winforms

我有一个WinForm应用程序通过Net.Sockets连接到另一个程序。

当它按X ALT + F4 或其他什么关闭时,应该处理几个例程,我需要保持网络连接,直到它们'重做。

我认为 Application.ApplicationExit 处理程序可以解决问题,但是一旦我下订单,网络连接就会死机。其他重要的事情无法完成。

我的表格也会立即关闭,我需要更长时间。

Application.ApplicationExit是工作的正确工具吗?

我把它放在我的表单类中,{Main}方法中的App.Runs位于不同的类中。

2 个答案:

答案 0 :(得分:5)

您可以使用表单的Closing事件。在表单关闭之前调用它。

答案 1 :(得分:0)

如果您有一个打开的窗口,则有事件处理程序ClosingClosed。例如,只要单击“X”,就会触发Closing - 事件。在方法内部,您甚至可以决定是否关闭窗口。

提供类似

的事件处理程序
private void Form1_Closing(object sender, FormClosingEventArgs e){
// persist until everything is done
}

并将其与活动相关联

Form1.Closing += Form1_Closing;

有关文档,请参阅MSDN