我有一个简单的系统,可以在多个页面之间进行切换。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?
1 回答
慕盖茨4494581
TA贡献1850条经验 获得超11个赞
您正在创建 的新实例MainWindow。您应该访问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();
}
- 1 回答
- 0 关注
- 1043 浏览
添加回答
举报
0/150
提交
取消