在WPF中的页面之间切换

ioa*_*nb7 4 c# wpf blend

我想制作一个像任何网站中使用的布局 - 标题,侧边栏和页脚保持不变,但中心部分.我有多个页面/窗口在wpf混合C#应用程序中显示,它们完全不同.例如,stackoverflow具有主页的布局和每个问题的另一个布局.这是另一个例子:

第一页 第二页

我必须在之前的项目中执行此操作并使用单个网格布局然后,对于每个页面,我必须隐藏()所有这些并显示每个顶部 -

有什么诀窍?如何在wpf应用程序中执行相同的操作?在一个典型的C#应用​​程序中,我每次都必须打开一个子窗口,但这些日子看起来很难看.

先感谢您!

She*_*dan 6

如果要Page在WPF中使用s,则需要阅读MSDN上的" 导航概述"页面.简而言之,您可以Page使用NavigationServiceClass在WPF应用程序中的s 之间导航.要从代码后面更改页面,您可以执行以下操作:

NextPage page = new NextPage();
NavigationService.Navigate(page);
Run Code Online (Sandbox Code Playgroud)

为了让用户改变Page,你可以使用Hyperlink PageS:

<Hyperlink NavigateUri="pack://application:,,,/AppName;component/Pages/NextPage.xaml">
    Navigate to Next Page
</Hyperlink>
Run Code Online (Sandbox Code Playgroud)

要获得所需的页面设置,您必须将Pages 加载到a中Frame,然后可以在任何位置进行布局MainWindow.xaml:

<Frame Source="pack://application:,,,/AppName;component/Pages/SomePage.xaml" />
Run Code Online (Sandbox Code Playgroud)