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" >
10 <Style x:Key="MyListBoxStyle" TargetType="{x:Type ListBox}">
11 <Setter Property="SelectionMode" Value="Extended"/>
12 <Setter Property="Template">
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"/>
28 <Style x:Key="DestListBoxItem" TargetType="{x:Type ListBoxItem}">
29 <EventSetter Event="Drop" Handler="DestItem_Drop" HandledEventsToo="True" />
30 <Setter Property="Template">
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"/>
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"/>
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"/>
48 </ControlTemplate.Triggers>
54 <Style x:Key="SourceListBoxItem" TargetType="{x:Type ListBoxItem}">
55 <EventSetter Event="PreviewMouseLeftButtonDown"
56 Handler ="rect_PreviewMouseLeftButtonDown"
57 HandledEventsToo="True" />
58 <Setter Property="Template">
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"/>
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"/>
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"/>
76 </ControlTemplate.Triggers>
82 <Style x:Key="DestPageListBoxItem" TargetType="{x:Type ListBoxItem}">
83 <EventSetter Event="Drop" Handler="DestPageItem_Drop" HandledEventsToo="True" />
84 <Setter Property="Template">
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"/>
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"/>
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"/>
102 </ControlTemplate.Triggers>
108 <Style x:Key="SourcePageListBoxItem" TargetType="{x:Type ListBoxItem}">
109 <EventSetter Event="PreviewMouseLeftButtonDown"
110 Handler ="page_PreviewMouseLeftButtonDown" HandledEventsToo="True" />
111 <Setter Property="Template">
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"/>
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"/>
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"/>
129 </ControlTemplate.Triggers>
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"/>