added samples
[windows-sources.git] / sdk / samples / WPFSamples / DataTemplatingIntro / visualbasic / window1.xaml
blob538ca4773dee468c33b8a67b2f82ac3843227e83
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">
7   <Window.Resources>
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"/>
16         </Style>
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>
23         </DockPanel>
24       </Border>
25     </DataTemplate>
27     <DataTemplate x:Key="myTaskTemplate">
28       <Border Name="border" BorderBrush="Aqua" BorderThickness="1"
29               Padding="5" Margin="5">
30         <Grid>
31           <Grid.RowDefinitions>
32             <RowDefinition/>
33             <RowDefinition/>
34             <RowDefinition/>
35           </Grid.RowDefinitions>
36           <Grid.ColumnDefinitions>
37             <ColumnDefinition />
38             <ColumnDefinition />
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}"/>
46         </Grid>
47       </Border>
48       <DataTemplate.Triggers>
49         <DataTrigger Binding="{Binding Path=TaskType}">
50           <DataTrigger.Value>
51             <local:TaskType>Home</local:TaskType>
52           </DataTrigger.Value>
53           <Setter TargetName="border" Property="BorderBrush" Value="Yellow"/>
54         </DataTrigger>
55       </DataTemplate.Triggers>
56     </DataTemplate>
57   </Window.Resources>
59   <StackPanel>
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}"/>
69   </StackPanel>
70 </Window>