我们可以和如何在同一个线程中打开一个新窗口并关闭上一个窗口吗?

时间:2011-04-06 22:05:08

标签: c# wpf winforms

我问这个,因为我想知道当我们运行应用程序时,如果我们有一个窗口进行身份验证,如登录窗口,在验证用户后,我们是否可以打开主窗口线程没有创建新的?

我正在尝试在WPF中执行此操作,但我认为在WPF或Windows窗体中这是相同的。

3 个答案:

答案 0 :(得分:2)

是的,你可以。
就这么做。

答案 1 :(得分:1)

当您通过IDE生成Windows窗体应用程序时,它将生成一个窗体的代码,以及在运行时显示窗体的 Main 函数。您可以重写 Main 方法,以便以模态方式显示一个表单,然后显示下一个表单。

但实现目标的方法更为简单:

有两个窗口:主窗口,大部分工作已完成,以及登录屏幕。

在主窗口的OnLoad事件中,创建登录窗口的实例并在此实例上调用ShowModal()。

如果登录失败,请退出该应用程序。

答案 2 :(得分:0)

此问题没有提供足够的背景信息告诉您如何在特定情况下执行此操作。一般情况下,您只需Close()一个窗口,构建一个新窗口并在其上调用Show()

当窗口关闭时,您应该确保Application.ShutdownMode不会杀死您的应用程序。