如何从 WPF 中的当前页面调用另一个页面?

我有一个简单的系统,可以在多个页面之间进行切换。MainWindow有一些重定向到页面的功能:


每个其他功能都重定向到另一个页面。


private void BtnDebug_Click(object sender, RoutedEventArgs e)

{

   FrContent.Content = new Page_Debug();

}

这很有效,因为所有这些函数都是从MainWindow. 我也需要从 a 调用它们Page,上面的系统不起作用。


这是我尝试使用的一种方式:


private readonly MainWindow _mainWindow = new MainWindow();


private void BtnShowNotes_OnClick(object sender, RoutedEventArgs e)

{

    _mainWindow.FrContent.Content = new Page_Notes();

}

问题是它没有显示任何 XAML 中的元素,尽管它调用了InitializeComponent()函数。为什么它不像 中的函数MainWindow?


三国纷争
浏览 1045回答 1
1回答

慕盖茨4494581

您正在创建 的新实例MainWindow。您应该访问Frame现有窗口的 。您可以使用以下Application.Current.Windows属性获取对此的引用:private void BtnShowNotes_OnClick(object sender, RoutedEventArgs e){&nbsp; &nbsp; MainWindow mw = Application.Current.Windows.OfType<MainWindow>().FirstOrDefault();&nbsp; &nbsp; if (mw != null)&nbsp; &nbsp; &nbsp; &nbsp; mw.FrContent.Content = new Page_Notes();}
打开App,查看更多内容
随时随地看视频慕课网APP