gpt4 book ai didi

wpf - 独立显示/隐藏窗口的最佳方法

转载 作者:行者123 更新时间:2023-12-03 17:55:45 24 4
gpt4 key购买 nike

我是一名学生,正在构建一个 C# WPF 应用程序。它有三个窗口:

  • 登录窗口
  • 创建账户窗口
  • 和主应用程序窗口。

  • 我上传了一个图来显示我正在尝试实现的导航类型:

    http://picturepush.com/public/8870554

    我认为在另一个窗口的关闭/加载事件中显示/隐藏一个窗口是不正确的。
  • 有人可以告诉我实现此导航的正确方法吗?
  • 另外,将应用程序类的三个窗口私有(private)属性设置为一个好习惯吗?
  • 最后一个窗口有一个框架控件来支持页面导航。同样,将 MainWindow 应用程序的三个页面设为私有(private)属性会更好吗?

  • 如果这很明显或很容易做到,我很抱歉。
    谢谢

    最佳答案

    我不会将三个窗口作为应用程序的属性。我会实例化登录窗口的副本并将其用作我的中心控制点。

    当用户登录时,隐藏登录窗口,显示一个新的主窗口并在主窗口关闭事件上添加一个钩子(Hook)。

    例如

    if (logonSuccess)
    {
    var mainWindow = new MainWindow();
    mainWindow.Closed += ReshowSignupWindow;
    }

    我也会让登录窗口对创建帐户窗口执行相同的操作。因此,如果创建了帐户,我会让创建帐户窗口返回到注册窗口,该窗口将重新显示或启动主窗口。

    例如。:
    // In sign-in window, handle the create window being closed
    private void CreateWindowClosedHandler(object sender, EventArgs e)
    {
    if (accountCreatedOK)
    {
    ShowMainWindow();
    }
    else
    {
    ReshowSignupWindow();
    }
    }

    我可能会通过调用 ShowDialog() 将创建帐户窗口显示为对话窗口。 .

    希望有帮助...

    关于wpf - 独立显示/隐藏窗口的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11755162/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com