1 <Window x:Class="Window1"
2 xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
3 xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
4 xmlns:local="clr-namespace:DataTemplatingIntro_VB"
5 SizeToContent="WidthAndHeight"
6 Title="Introduction to Data Templating Sample">
8 <local:Tasks x:Key="myTodoList"/>
10 <local:TaskListDataTemplateSelector x:Key="myDataTemplateSelector"/>
12 <DataTemplate x:Key="importantTaskTemplate">
13 <DataTemplate.Resources>
14 <Style TargetType="TextBlock">
15 <Setter Property="FontSize" Value="20"/>
17 </DataTemplate.Resources>
18 <Border Name="border" BorderBrush="Red" BorderThickness="1"
19 Padding="5" Margin="5">
20 <DockPanel HorizontalAlignment="Center">
21 <TextBlock Text="{Binding Path=Description}" />
22 <TextBlock>!</TextBlock>
27 <DataTemplate x:Key="myTaskTemplate">
28 <Border Name="border" BorderBrush="Aqua" BorderThickness="1"
29 Padding="5" Margin="5">
35 </Grid.RowDefinitions>
36 <Grid.ColumnDefinitions>
39 </Grid.ColumnDefinitions>
40 <TextBlock Grid.Row="0" Grid.Column="0" Text="Task Name:"/>
41 <TextBlock Grid.Row="0" Grid.Column="1" Text="{Binding Path=TaskName}" />
42 <TextBlock Grid.Row="1" Grid.Column="0" Text="Description:"/>
43 <TextBlock Grid.Row="1" Grid.Column="1" Text="{Binding Path=Description}"/>
44 <TextBlock Grid.Row="2" Grid.Column="0" Text="Priority:"/>
45 <TextBlock Grid.Row="2" Grid.Column="1" Text="{Binding Path=Priority}"/>
48 <DataTemplate.Triggers>
49 <DataTrigger Binding="{Binding Path=TaskType}">
51 <local:TaskType>Home</local:TaskType>
53 <Setter TargetName="border" Property="BorderBrush" Value="Yellow"/>
55 </DataTemplate.Triggers>
60 <TextBlock FontSize="20" Text="My Task List:"/>
61 <ListBox Width="400" Margin="10"
62 ItemsSource="{Binding Source={StaticResource myTodoList}}"
63 ItemTemplateSelector="{StaticResource myDataTemplateSelector}"
64 HorizontalContentAlignment="Stretch"
65 IsSynchronizedWithCurrentItem="True"/>
66 <TextBlock FontSize="20" Text="Information:"/>
67 <ContentControl Content="{Binding Source={StaticResource myTodoList}}"
68 ContentTemplate="{StaticResource myTaskTemplate}"/>