我阅读了大约数百个问答和博客,但无法解决我遇到的错误。在我的WPF应用程序中,我需要从MainWindow.xaml导航到Page Register.xaml。我有以下代码:
Register register = new Register();
MainWindow.Navigate(register);
或
this.NavigationService.Navigate(new Uri("Register.xaml ", UriKind.Relative));
它给了我错误'.主窗口"不包含"导航"的定义或主窗口"不包含"导航服务"的定义
要在其中打开页面,您需要将其放在框架中。
A page can be hosted from Window, NavigationWindow, Frame, or from a browser. To be hosted, a page can be:
-
中的窗口、导航窗口或框架元素的直接子元素XAML。
-
实例化并设置为"窗口"、"导航窗口"和"框架"的"内容"属性的值。
-
设置为导航窗口或框架的源属性的统一资源标识符 (URI) 源。
如果你想把它放在你的主窗口中,你可以执行以下操作。
XAML
<Frame Name="contentFrame" />
C# 代码隐藏
contentFrame.Content = new Page();
要在新窗口中打开它,您可以执行以下操作。
Page p = new Page();
p.Show();