【问题标题】:Navigating pages not working unless on button click除非单击按钮,否则导航页面不起作用
【发布时间】:2019-12-17 13:51:45
【问题描述】:

我正在使用 WPF 框架开发一个 GUI 应用程序。

我有一个名为 MainWindow 的窗口和几页。 我有一个带有按钮的菜单,链接到不同的页面。通过这种导航,我设法导航到不同的页面并很好地回到 MainWindow。下面的例子。

我如何使用按钮进行导航 - 工作:

从窗口(称为主窗口)到页面(称为设置)

private void btnSettings(object sender, RoutedEventArgs e)
    {
        Settings pg = new Settings();
        this.Content = pg;
    }

从页面(称为设置)返回到窗口(称为主窗口)

private void btnDomov(object sender, RoutedEventArgs e)
    {
        var MainWindow = new MainWindow();
        MainWindow.Show();
        Window parentWindow = Window.GetWindow(this);
        parentWindow.Close();
    }

当我从 MainWindow 转到页面时会出现问题,但不是单击按钮,而是由于执行了一些代码(在我的情况下,当我读取 RFID 卡时,我转到“SkenirajKartico”页面。) .实际上我可以进入想要的页面,但我无法返回主窗口。当我单击转到 MainWindow(主页)时,它会刷新同一页面“SkenirajKartico”。代码如下所示。任何想法如何解决这个问题?

示例:执行某些代码后,我正在调用方法“pokliciDialog”以转到想要的页面(“SkenirajKartico”)

执行某些代码后我如何导航 - 不工作

private void pokliciDialog()
    {
        if (startup == false)
        {
            SkenirajKartico pg = new SkenirajKartico();
            this.Content = pg;
        }
    }

正如我所说,页面被刷新到想要的页面(“SkenirajKartico”)。当在这个页面上执行一些代码时,我执行与上面相同的步骤 - 调用方法“goToMain”返回主页,但它刷新当前页面“SkenirajKartico”并且不去想要的MainWindow。

void goToMain()
{ 
    var MainWindow = new MainWindow();
    MainWindow.Show();
    Window parentWindow = Window.GetWindow(this);
    parentWindow.Close();
}

我看到我缺少参数,但是如果我将对象发送者和 RoutedEventArgs e 添加到方法中,我不知道如何调用它们。如果有人可以帮助我,我会很高兴。

【问题讨论】:

    标签: c# wpf


    【解决方案1】:

    我的错误,愚蠢的错误。每次加载 MainWindow 时,我都会调用方法来显示页面“SkenirajKartico”。这就是为什么“SkenirajKartico”页面不断刷新的原因。 哎呀。

    【讨论】:

      猜你喜欢
      • 2022-01-04
      • 2012-06-19
      • 1970-01-01
      • 1970-01-01
      • 2019-05-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-15
      相关资源
      最近更新 更多