子窗口调用父窗口

相信学计算机的大学生都碰过这样的编程作业吧……

“程序运行后主窗口隐藏,然后弹出登录框,输入账号密码登陆成功后再关闭登陆框,然后让之前隐藏的主窗口重新显示。”

没错,我当时就是这么笨,怎么都想不到好的解决办法……当时的同学都是不管之前隐藏的主窗口,而是直接新建了一个主窗口……

刚好昨晚在做项目时碰到类似的情况,就在这写一个超级简单的方法吧……

private void img_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
    LoginWindow loginWindow = new LoginWindow();
    loginWindow.Closing += showMainWindowEvent;
    loginWindow.Show();
    this.Hide();
}

private void showMainWindowEvent(object sender, System.ComponentModel.CancelEventArgs e)
{
    this.Show();
}

也就是订阅登陆窗口的Closing事件,然后在事件中写上this.Show()就好了……其实就和“点击某个Button显示主窗口”的原理一样……

最主要的是,不要忘了窗口其实也是一个普通类……

原文地址:https://www.cnblogs.com/xiaoshi3003/p/4050722.html