主表单关闭时显示表单

时间:2015-03-19 19:16:47

标签: c# multithreading winforms

我已尝试过一些线程,但我无法找到正确的方法来获得我想要的东西(因为我对线程不是很熟悉)。 我的主表单中有一个“退出”按钮。单击时,窗体完全关闭并重新启动(Application.Restart())。现在我希望在主窗体关闭时弹出另一个窗体(只是带有“注销 - 请稍候”的标签)。当主窗体打开时,这个“退出表单”应该消失。 我知道我应该将Sign out窗体作为前台线程但是如何使用线程调用Form.Open()方法以及在主窗体启动时如何关闭它?

1 个答案:

答案 0 :(得分:1)

尝试在主窗体的FormClosing事件中显示第二个窗体。

当主表单关闭时,肯定会关闭"关闭"应用程序的消息循环使得无法生成任何新窗口或关闭任何已打开的窗口。

编辑: 截至评论:显示即将重新启动的流程中的注销表单,直到成功启动新流程将无法实现,因为旧流程将关闭,因此它将显示任何打开的表单。

可能的解决方案:

  • 编写一个程序,其唯一目的是显示注销表单,并在重新启动应用程序之前启动该程序。应用程序启动后再次搜索注销表单的进程并停止/终止它。
  • 避免完全重启您的应用程序