Navigate to an instance of a custom class, instead of a Page. : Page « Windows Presentation Foundation « VB.Net






Navigate to an instance of a custom class, instead of a Page.

Navigate to an instance of a custom class, instead of a Page.
     

<Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  x:Class="WpfApplication1.HomePage"
  xmlns:local="clr-namespace:WpfApplication1"
  WindowTitle="Page that Navigates to an Object">
  <Page.Resources>
    <DataTemplate DataType="{x:Type local:Person}">
      <TextBlock xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
        <TextBlock FontWeight="Bold">Name:</TextBlock>
        <TextBlock Text="{Binding Path=Name}" />
        <LineBreak />
        <TextBlock FontWeight="Bold">Favorite Color:</TextBlock>
        <TextBlock Text="{Binding Path=FavoriteColor}" FontWeight="Bold">
          <TextBlock.Background>
            <SolidColorBrush Color="{Binding Path=FavoriteColor}" />
          </TextBlock.Background>
        </TextBlock>
      </TextBlock>
    </DataTemplate>
  </Page.Resources>
  <Hyperlink Name="hyperlink" Click="hyperlink_Click">Navigate to Nancy Davolio</Hyperlink>

</Page>
//File:Window.xaml.vb
Imports System.Windows
Imports System.Windows.Controls
Imports System.Windows.Media

Namespace WpfApplication1
  Public Partial Class HomePage
    Inherits Page
    Public Sub New()
      InitializeComponent()
    End Sub

    Private Sub hyperlink_Click(sender As Object, e As RoutedEventArgs)
      Dim person As New Person("A", Colors.Yellow)
      Me.NavigationService.Navigate(person)
    End Sub
  End Class
  Public Class Person
    Private m_name As String
    Private m_favoriteColor As Color

    Public Sub New()
    End Sub
    Public Sub New(name As String, favoriteColor As Color)
      Me.m_name = name
      Me.m_favoriteColor = favoriteColor
    End Sub

    Public Property Name() As String
      Get
        Return Me.m_name
      End Get
      Set
        Me.m_name = value
      End Set
    End Property

    Public Property FavoriteColor() As Color
      Get
        Return Me.m_favoriteColor
      End Get
      Set
        Me.m_favoriteColor = value
      End Set
    End Property
  End Class
End Namespace

   
    
    
    
    
  








Related examples in the same category

1.Automatic InlineUIContainer generation: text along with ButtonAutomatic InlineUIContainer generation: text along with Button
2.Path Reference Page SnipPath Reference Page Snip
3.Create a button when the page loads.Create a button when the page loads.
4.Page Loaded eventPage Loaded event
5.Remember and navigate through multiple sets of state for a single page instanceRemember and navigate through multiple sets of state for a single page instance
6.Select Product Page FunctionSelect Product Page Function
7.UI With Page for Dynamic Button contentUI With Page for Dynamic Button content
8.A XAML browser application (XBAP) running in partial trust can safely upload files from a client machine.A XAML browser application (XBAP) running in partial trust can safely upload files from a client machine.