Skip to Main Content
Programming WPF, 2nd Edition
book

Programming WPF, 2nd Edition

by Chris Sells, Ian Griffiths
August 2007
Intermediate to advanced content levelIntermediate to advanced
864 pages
25h 52m
English
O'Reilly Media, Inc.
Content preview from Programming WPF, 2nd Edition

Pages

If we want to get a little fancier than a string, we can create multiple Pages of content, which is specifically what the Page class was invented for (see Example 11-2).

Example 11-2. Packaging content with a Page object

<!-- Page1.xaml -->
<Page
 ...
    x:Class="NavigationBasics.Page1"
    Title="Page 1"
    WindowTitle="Welcome to Page 1">
  <TextBlock VerticalAlignment="Bottom">
    <Hyperlink NavigateUri="Page2.xaml">Click to see page 2</Hyperlink>
  </TextBlock>
</Page>



// Page1.xaml.cs
...
using System.Windows.Controls; // home of the Page

public partial class Page1 : Page{
public Page1(  ) {
// Initialize page from XAML
    InitializeComponent(  );
  }
}

To get the basic skeleton of a new Page class, you can right-click on your project in the Visual Studio 2005 Solution Explorer, choosing Add → New Item, and select Page (WPF). Example 11-2 was started that way, adding the WindowTitle, the Title, and the content. The WindowTitle is what shows up in the caption of the navigation host. The Title property is what shows up in the history drop-down. If you don't set a page's Title property, it will be composed for you as WindowTitle (foo.xaml), which isn't particularly friendly.

The content in Example 11-2 uses a Hyperlink, which is a nice little element that handles clicking for navigation applications.[70] We're setting the NavigateUri property to point to the page resource we'd like it to load for us. The NavigateUri supports the normal URI format (e.g., a URL to an HTTP file on the Web), as well as ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Programming C#, 4th Edition

Programming C#, 4th Edition

Jesse Liberty
Programming C# 10

Programming C# 10

Ian Griffiths

Publisher Resources

ISBN: 9780596510374Supplemental ContentErrata Page