added samples
[windows-sources.git] / sdk / samples / WPFSamples / DocumentMerge / csharp / window1.xaml
blob133bc72d5b9691925dd58acc6488d378209d3014
1 <Window x:Class="SdkSample.Window1"
2         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
3         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
4         Title="DocumentMerge Sample" Drop="Window_OnDrop" AllowDrop="False" >
6   <Grid Name="MyGrid">
8     <Grid.Resources>
10       <Style x:Key="MyListBoxStyle" TargetType="{x:Type ListBox}">
11         <Setter Property="SelectionMode" Value="Extended"/>
12         <Setter Property="Template">
13           <Setter.Value>
14             <ControlTemplate TargetType="{x:Type ListBox}">
15               <Border Background="{TemplateBinding Panel.Background}"
16                       BorderBrush="{TemplateBinding Border.BorderBrush}"
17                       BorderThickness="{TemplateBinding Border.BorderThickness}">
18                 <ScrollViewer HorizontalScrollBarVisibility="Auto">
19                   <VirtualizingStackPanel x:Name="StackPanel1" IsItemsHost="True"
20                                           Orientation="Horizontal"/>
21                 </ScrollViewer>
22               </Border>
23             </ControlTemplate>
24           </Setter.Value>
25         </Setter>
26       </Style>
28       <Style x:Key="DestListBoxItem" TargetType="{x:Type ListBoxItem}">
29             <EventSetter Event="Drop" Handler="DestItem_Drop" HandledEventsToo="True" />
30         <Setter Property="Template">
31           <Setter.Value>
32             <ControlTemplate TargetType="{x:Type ListBoxItem}">
33               <Border Name="myBorder" BorderBrush="Gray" BorderThickness="1"
34                       Opacity="50" Width="80" Height="100" Margin="2" >
35                 <Rectangle Fill="{Binding Path=PageBrush, Mode=OneWay}" Width="80" Height="100"/>
36               </Border>
37               <ControlTemplate.Triggers>
38                 <Trigger Property="IsSelected" Value="true">
39                   <Setter Property="BorderBrush" Value="Blue" TargetName="myBorder"/>
40                   <Setter Property="BorderThickness" Value="3" TargetName="myBorder"/>
41                   <Setter Property="Opacity" Value="100" TargetName="myBorder"/>
42                 </Trigger>
43                 <Trigger Property="IsSelected" Value="false">
44                   <Setter Property="BorderBrush" Value="Gray" TargetName="myBorder"/>
45                   <Setter Property="BorderThickness" Value="1" TargetName="myBorder"/>
46                   <Setter Property="Opacity" Value="50" TargetName="myBorder"/>
47                 </Trigger>
48               </ControlTemplate.Triggers>
49             </ControlTemplate>
50           </Setter.Value>
51         </Setter>
52       </Style>
54       <Style x:Key="SourceListBoxItem" TargetType="{x:Type ListBoxItem}">
55         <EventSetter Event="PreviewMouseLeftButtonDown"
56                      Handler ="rect_PreviewMouseLeftButtonDown"
57                      HandledEventsToo="True" />
58         <Setter Property="Template">
59           <Setter.Value>
60             <ControlTemplate TargetType="{x:Type ListBoxItem}">
61               <Border Name="myBorder" BorderBrush="Gray" BorderThickness="1"
62                       Opacity="50" Width="80" Height="100" Margin="2">
63                 <Rectangle Fill="{Binding Path=PageBrush, Mode=OneWay}" Width="80" Height="100"/>
64               </Border>
65               <ControlTemplate.Triggers>
66                 <Trigger Property="IsSelected" Value="true">
67                   <Setter Property="BorderBrush" Value="Blue" TargetName="myBorder"/>
68                   <Setter Property="BorderThickness" Value="3" TargetName="myBorder"/>
69                   <Setter Property="Opacity" Value="100" TargetName="myBorder"/>
70                 </Trigger>
71                 <Trigger Property="IsSelected" Value="false">
72                   <Setter Property="BorderBrush" Value="Gray" TargetName="myBorder"/>
73                   <Setter Property="BorderThickness" Value="1" TargetName="myBorder"/>
74                   <Setter Property="Opacity" Value="50" TargetName="myBorder"/>
75                 </Trigger>
76               </ControlTemplate.Triggers>
77             </ControlTemplate>
78           </Setter.Value>
79         </Setter>
80       </Style>
82       <Style x:Key="DestPageListBoxItem" TargetType="{x:Type ListBoxItem}">
83         <EventSetter Event="Drop" Handler="DestPageItem_Drop" HandledEventsToo="True" />
84         <Setter Property="Template">
85           <Setter.Value>
86             <ControlTemplate TargetType="{x:Type ListBoxItem}">
87               <Border Name="myBorder" BorderBrush="Gray" BorderThickness="1"
88                       Opacity="50" Width="80" Height="100" Margin="2" >
89                 <Rectangle Fill="{Binding Path=PageBrush, Mode=OneWay}" Width="80" Height="100"/>
90               </Border>
91               <ControlTemplate.Triggers>
92                 <Trigger Property="IsSelected" Value="true">
93                   <Setter Property="BorderBrush" Value="Blue" TargetName="myBorder"/>
94                   <Setter Property="BorderThickness" Value="3" TargetName="myBorder"/>
95                   <Setter Property="Opacity" Value="100" TargetName="myBorder"/>
96                 </Trigger>
97                 <Trigger Property="IsSelected" Value="false">
98                   <Setter Property="BorderBrush" Value="Gray" TargetName="myBorder"/>
99                   <Setter Property="BorderThickness" Value="1" TargetName="myBorder"/>
100                   <Setter Property="Opacity" Value="50" TargetName="myBorder"/>
101                 </Trigger>
102               </ControlTemplate.Triggers>
103             </ControlTemplate>
104           </Setter.Value>
105         </Setter>
106       </Style>
108       <Style x:Key="SourcePageListBoxItem" TargetType="{x:Type ListBoxItem}">
109         <EventSetter Event="PreviewMouseLeftButtonDown"
110                      Handler ="page_PreviewMouseLeftButtonDown" HandledEventsToo="True" />
111         <Setter Property="Template">
112           <Setter.Value>
113             <ControlTemplate TargetType="{x:Type ListBoxItem}">
114               <Border Name="myBorder" BorderBrush="Gray" BorderThickness="1"
115                       Opacity="50" Width="80" Height="100" Margin="2" >
116                 <Rectangle Fill="{Binding Path=PageBrush, Mode=OneWay}" Width="80" Height="100"/>
117               </Border>
118               <ControlTemplate.Triggers>
119                 <Trigger Property="IsSelected" Value="true">
120                   <Setter Property="BorderBrush" Value="Blue" TargetName="myBorder"/>
121                   <Setter Property="BorderThickness" Value="3" TargetName="myBorder"/>
122                   <Setter Property="Opacity" Value="100" TargetName="myBorder"/>
123                 </Trigger>
124                 <Trigger Property="IsSelected" Value="false">
125                   <Setter Property="BorderBrush" Value="Gray" TargetName="myBorder"/>
126                   <Setter Property="BorderThickness" Value="1" TargetName="myBorder"/>
127                   <Setter Property="Opacity" Value="50" TargetName="myBorder"/>
128                 </Trigger>
129               </ControlTemplate.Triggers>
130             </ControlTemplate>
131           </Setter.Value>
132         </Setter>
133       </Style>
135     </Grid.Resources>
137     <Grid.RowDefinitions>
138       <RowDefinition Height="Auto" />
139       <RowDefinition Height="*" />
140       <RowDefinition Height="*" />
141       <RowDefinition Height="*" />
142       <RowDefinition Height="*" />
143     </Grid.RowDefinitions>
145     <ListBox AllowDrop="True" Drop="DestDocList_OnDrop" Margin="5,5,5,5"
146              Name="dest" SelectionChanged="DestSelected" Grid.Row="1"
147              ItemContainerStyle="{DynamicResource DestListBoxItem}"
148              Style="{DynamicResource MyListBoxStyle}"
149              PreviewKeyUp="DestList_PreviewKeyUp"/>
151     <ListBox AllowDrop="True"  Drop="DestPageList_OnDrop" Margin="5,5,5,5"
152              ItemContainerStyle="{DynamicResource DestPageListBoxItem}"
153              Name="destPage" Grid.Row="2"
154              Style="{DynamicResource MyListBoxStyle}"
155              PreviewKeyUp="DestPageList_PreviewKeyUp"/>
157     <ListBox ItemContainerStyle="{DynamicResource SourcePageListBoxItem}"
158              Margin="5,5,5,5" Name="sourcePage" Grid.Row="3"
159              Style="{DynamicResource MyListBoxStyle}"/>
161     <ListBox Name="source" SelectionChanged="SourceSelected"
162              Margin="5,5,5,5" Grid.Row="4"
163              ItemContainerStyle="{DynamicResource SourceListBoxItem}"
164              Style="{DynamicResource MyListBoxStyle}"/>
166     <Menu HorizontalAlignment="Left" Background="White">
167       <MenuItem Header="_File">
168         <MenuItem Header="_Open..." Click="OpenCommandHandler"/>
169         <MenuItem Name="menuFileSave" IsEnabled="False"
170                   Header="_Save As..." Click="SaveCommandHandler"/>
171         <MenuItem Header="_Exit" Click="CloseCommandHandler"/>
172       </MenuItem>
173     </Menu>
175   </Grid>
177 </Window>