C# WPF:关闭和打开窗口

C# WPF:关闭和打开窗口,c#,.net,wpf,events,C#,.net,Wpf,Events,在我的例子中,我有一个主窗口和一个登录视图 当主窗口关闭时,应显示登录窗口。我这样合上它: void CloseOnCompleteAndDisplayLogin(object sender, RunWorkerCompletedEventArgs e) { this.Close(); new Login().Show(); } 在登录窗口中,我打开main窗口,如下所示: this.Hide(); var window = new Ma

在我的例子中,我有一个主窗口和一个登录视图

当主窗口关闭时,应显示登录窗口。我这样合上它:

    void CloseOnCompleteAndDisplayLogin(object sender, RunWorkerCompletedEventArgs e)
    {
        this.Close();
        new Login().Show();
    }
在登录窗口中,我打开
main窗口
,如下所示:

this.Hide();
var window = new MainWindow(model).Show();
问题:当我第一次登录并打开
主窗口时,它工作正常。当我关闭
主窗口
并再次登录时,主窗口的几个功能停止工作或开始抛出异常


我做错了什么?我已经计算过,重新登录时不会触发
Window\u Loaded
类事件。

是的,
Loaded
如果隐藏/显示,则不会触发。相反,使用显示的
事件来初始化逻辑。

我认为这可能是问题所在

       new Login().Show();
首先,隐藏登录窗口的实例,关闭MainWindow后,始终创建new()