wpf 从当前页调用另一页

4c8rllxm  于 2022-11-18  发布在  其他
关注(0)|答案(1)|浏览(228)

目标是开发一个简单的系统,提供几个页面之间的切换。MainWindow有几个功能,这是重定向到他们的页面看起来像这样:

private void BtnDebug_Click(object sender, RoutedEventArgs e)
{
   FrContent.Content = new Page_Debug();
}

这只在从MainWindow调用函数时才起作用。希望也能从Page调用它们。

已试用的解决方案

private readonly MainWindow _mainWindow = new MainWindow();

private void BtnShowNotes_OnClick(object sender, RoutedEventArgs e)
{
    _mainWindow.FrContent.Content = new Page_Notes();
}

切换的页面不显示任何元素,尽管它调用了InitializeComponent()函数。

uoifb46i

uoifb46i1#

您正在建立MainWindow的新例项。您应该存取现有 windows 的Frame。您可以使用Application.Current.Windows属性来取得这个例项的参照:

private void BtnShowNotes_OnClick(object sender, RoutedEventArgs e)
{
    MainWindow mw = Application.Current.Windows.OfType<MainWindow>().FirstOrDefault();
    if (mw != null)
        mw.FrContent.Content = new Page_Notes();
}

相关问题