在Wpf(MUI)应用程序的Modern UI中,我想导航到现有页面的特定实例,例如:
Page myPageInstance = new Page();
NavigateTo(myPageInstance);
但是所有可用的方法,例如:
NavigationCommands.GoToPage.Execute("/Pages/Page.xaml", this);
或:
NavigationService nav = NavigationService.GetNavigationService(this);
nav.Navigate(myPageInstance)
或:
NavigationWindow nav = FindAncestor<NavigationWindow>(this);
...
public static T FindAncestor<T>(DependencyObject dependencyObject) where T : DependencyObject
{
var parent = VisualTreeHelper.GetParent(dependencyObject);
if (parent == null) return null;
var parentT = parent as T;
return parentT ?? FindAncestor<T>(parent);
}
不起作用(前者创建新的页面实例,第二个没有找到任何NavigationService(nav为null),后者没有找到任何NavigationWindow(当然,因为root是一个) FirstFloor.ModernUI.Windows.Controls.ModernWindow))
有什么建议吗?
谢谢!