#14 – Page-Based Navigation
July 26, 2010 2 Comments
WPF applications can be structured as a collection of pages, with built-in navigation between pages. This is different from the more traditional (Win Forms) document-based model, where the application displays a main window and dialogs that pop up.
To create a page-based application, you use a Page object as the top-level container in your application, instead of Window.
<Page x:Class="WpfApplication7.Page1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d" d:DesignHeight="300" d:DesignWidth="300"
Title="Page1">
<Grid>
<Label Content="This is a page, not a window." Height="28" HorizontalAlignment="Left" Margin="52,75,0,0" Name="label1" VerticalAlignment="Top" />
</Grid>
To make this page the main object loaded when the application starts, set the StartupUri attribute of your main Application:
<Application x:Class="WpfApplication7.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
StartupUri="Page1.xaml">
</Application>
Notice that we now get a main window with navigation controls at the top.