comparison delete me/SilverlightValidation/App.xaml @ 59:3591c26bd63e

MVVMLight added
author Steven Hollidge <stevenhollidge@hotmail.com>
date Sat, 21 Apr 2012 19:20:28 +0100
parents
children
comparison
equal deleted inserted replaced
58:241e2f22ed3c 59:3591c26bd63e
1 <Application x:Class="SilverlightValidation.App"
2 xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
3 xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
4 xmlns:p="clr-namespace:System.Windows.Controls.Primitives;assembly=System.Windows.Controls"
5 xmlns:s="clr-namespace:System;assembly=mscorlib"
6 xmlns:sdk="http://schemas.microsoft.com/winfx/2006/xaml/presentation/sdk">
7 <Application.Resources>
8 <ControlTemplate x:Key="ValidationToolTipTemplate">
9 <Grid x:Name="Root"
10 Margin="5,0"
11 Opacity="0"
12 RenderTransformOrigin="0,0">
13 <Grid.RenderTransform>
14 <TranslateTransform x:Name="xform" X="-25" />
15 </Grid.RenderTransform>
16 <VisualStateManager.VisualStateGroups>
17 <VisualStateGroup x:Name="OpenStates">
18 <VisualStateGroup.Transitions>
19 <VisualTransition GeneratedDuration="0" />
20 <VisualTransition GeneratedDuration="0:0:0.2" To="Open">
21 <Storyboard>
22 <DoubleAnimation Duration="0:0:0.2"
23 Storyboard.TargetName="xform"
24 Storyboard.TargetProperty="X"
25 To="0">
26 <DoubleAnimation.EasingFunction>
27 <BackEase Amplitude=".3" EasingMode="EaseOut" />
28 </DoubleAnimation.EasingFunction>
29 </DoubleAnimation>
30 <DoubleAnimation Duration="0:0:0.2"
31 Storyboard.TargetName="Root"
32 Storyboard.TargetProperty="Opacity"
33 To="1" />
34 </Storyboard>
35 </VisualTransition>
36 </VisualStateGroup.Transitions>
37 <VisualState x:Name="Closed">
38 <Storyboard>
39 <DoubleAnimation Duration="0"
40 Storyboard.TargetName="Root"
41 Storyboard.TargetProperty="Opacity"
42 To="0" />
43 </Storyboard>
44 </VisualState>
45 <VisualState x:Name="Open">
46 <Storyboard>
47 <DoubleAnimation Duration="0"
48 Storyboard.TargetName="xform"
49 Storyboard.TargetProperty="X"
50 To="0" />
51 <DoubleAnimation Duration="0"
52 Storyboard.TargetName="Root"
53 Storyboard.TargetProperty="Opacity"
54 To="1" />
55 </Storyboard>
56 </VisualState>
57 </VisualStateGroup>
58 </VisualStateManager.VisualStateGroups>
59 <Border Margin="4,4,-4,-4"
60 Background="#052A2E31"
61 CornerRadius="5" />
62 <Border Margin="3,3,-3,-3"
63 Background="#152A2E31"
64 CornerRadius="4" />
65 <Border Margin="2,2,-2,-2"
66 Background="#252A2E31"
67 CornerRadius="3" />
68 <Border Margin="1,1,-1,-1"
69 Background="#352A2E31"
70 CornerRadius="2" />
71 <Border Background="#FFF3AB00" CornerRadius="2" />
72 <Border CornerRadius="2">
73 <TextBlock MaxWidth="250"
74 Margin="8,4,8,4"
75 Foreground="White"
76 Text="{Binding (Validation.Errors)[0].ErrorContent}"
77 TextWrapping="Wrap"
78 UseLayoutRounding="false" />
79 </Border>
80 </Grid>
81 </ControlTemplate>
82
83 <Style x:Key="LabelStyle" TargetType="TextBlock">
84 <Setter Property="Height" Value="18" />
85 <Setter Property="FontFamily" Value="Segoe UI Light" />
86 <Setter Property="FontSize" Value="14" />
87 <Setter Property="VerticalAlignment" Value="Center" />
88 </Style>
89
90 <Style x:Key="TextBoxStyle" TargetType="TextBox">
91 <Setter Property="BorderThickness" Value="1" />
92 <Setter Property="Background" Value="#FFFFFFFF" />
93 <Setter Property="FontFamily" Value="Segoe UI Light" />
94 <Setter Property="FontSize" Value="12" />
95 <Setter Property="Height" Value="24" />
96 <Setter Property="VerticalAlignment" Value="Center" />
97 <Setter Property="Foreground" Value="#FF000000" />
98 <Setter Property="Padding" Value="2" />
99 <Setter Property="BorderBrush">
100 <Setter.Value>
101 <LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
102 <GradientStop Offset="0" Color="#FFA3AEB9" />
103 <GradientStop Offset="0.375" Color="#FF8399A9" />
104 <GradientStop Offset="0.375" Color="#FF718597" />
105 <GradientStop Offset="1" Color="#FF617584" />
106 </LinearGradientBrush>
107 </Setter.Value>
108 </Setter>
109 <Setter Property="Template">
110 <Setter.Value>
111 <ControlTemplate TargetType="TextBox">
112 <Grid x:Name="RootElement">
113 <VisualStateManager.VisualStateGroups>
114 <VisualStateGroup x:Name="CommonStates">
115 <VisualState x:Name="Normal" />
116 <VisualState x:Name="MouseOver">
117 <Storyboard>
118 <ColorAnimation Duration="0"
119 Storyboard.TargetName="MouseOverBorder"
120 Storyboard.TargetProperty="(Border.BorderBrush).(SolidColorBrush.Color)"
121 To="#FF99C1E2" />
122 </Storyboard>
123 </VisualState>
124 <VisualState x:Name="Disabled">
125 <Storyboard>
126 <DoubleAnimation Duration="0"
127 Storyboard.TargetName="DisabledVisualElement"
128 Storyboard.TargetProperty="Opacity"
129 To="1" />
130 </Storyboard>
131 </VisualState>
132 <VisualState x:Name="ReadOnly">
133 <Storyboard>
134 <DoubleAnimation Duration="0"
135 Storyboard.TargetName="ReadOnlyVisualElement"
136 Storyboard.TargetProperty="Opacity"
137 To="1" />
138 </Storyboard>
139 </VisualState>
140 </VisualStateGroup>
141 <VisualStateGroup x:Name="FocusStates">
142 <VisualState x:Name="Focused">
143 <Storyboard>
144 <DoubleAnimation Duration="0"
145 Storyboard.TargetName="FocusVisualElement"
146 Storyboard.TargetProperty="Opacity"
147 To="1" />
148 </Storyboard>
149 </VisualState>
150 <VisualState x:Name="Unfocused">
151 <Storyboard>
152 <DoubleAnimation Duration="0"
153 Storyboard.TargetName="FocusVisualElement"
154 Storyboard.TargetProperty="Opacity"
155 To="0" />
156 </Storyboard>
157 </VisualState>
158 </VisualStateGroup>
159 <VisualStateGroup x:Name="ValidationStates">
160 <VisualState x:Name="Valid" />
161 <VisualState x:Name="InvalidUnfocused">
162 <Storyboard>
163 <ObjectAnimationUsingKeyFrames Storyboard.TargetName="ValidationErrorElement" Storyboard.TargetProperty="Visibility">
164 <DiscreteObjectKeyFrame KeyTime="0">
165 <DiscreteObjectKeyFrame.Value>
166 <Visibility>Visible</Visibility>
167 </DiscreteObjectKeyFrame.Value>
168 </DiscreteObjectKeyFrame>
169 </ObjectAnimationUsingKeyFrames>
170 </Storyboard>
171 </VisualState>
172 <VisualState x:Name="InvalidFocused">
173 <Storyboard>
174 <ObjectAnimationUsingKeyFrames Storyboard.TargetName="ValidationErrorElement" Storyboard.TargetProperty="Visibility">
175 <DiscreteObjectKeyFrame KeyTime="0">
176 <DiscreteObjectKeyFrame.Value>
177 <Visibility>Visible</Visibility>
178 </DiscreteObjectKeyFrame.Value>
179 </DiscreteObjectKeyFrame>
180 </ObjectAnimationUsingKeyFrames>
181 <ObjectAnimationUsingKeyFrames Storyboard.TargetName="validationTooltip" Storyboard.TargetProperty="IsOpen">
182 <DiscreteObjectKeyFrame KeyTime="0">
183 <DiscreteObjectKeyFrame.Value>
184 <s:Boolean>True</s:Boolean>
185 </DiscreteObjectKeyFrame.Value>
186 </DiscreteObjectKeyFrame>
187 </ObjectAnimationUsingKeyFrames>
188 </Storyboard>
189 </VisualState>
190 </VisualStateGroup>
191 </VisualStateManager.VisualStateGroups>
192 <Border x:Name="Border"
193 Background="{TemplateBinding Background}"
194 BorderBrush="{TemplateBinding BorderBrush}"
195 BorderThickness="{TemplateBinding BorderThickness}"
196 CornerRadius="1"
197 Opacity="1">
198 <Grid>
199 <Border x:Name="ReadOnlyVisualElement"
200 Background="#5EC9C9C9"
201 Opacity="0" />
202 <Border x:Name="MouseOverBorder"
203 BorderBrush="Transparent"
204 BorderThickness="1">
205 <ScrollViewer x:Name="ContentElement"
206 BorderThickness="0"
207 IsTabStop="False"
208 Padding="{TemplateBinding Padding}" />
209 </Border>
210 </Grid>
211 </Border>
212 <Border x:Name="DisabledVisualElement"
213 Background="#A5F7F7F7"
214 BorderBrush="#A5F7F7F7"
215 BorderThickness="{TemplateBinding BorderThickness}"
216 IsHitTestVisible="False"
217 Opacity="0" />
218 <Border x:Name="FocusVisualElement"
219 Margin="1"
220 BorderBrush="#FF6DBDD1"
221 BorderThickness="{TemplateBinding BorderThickness}"
222 IsHitTestVisible="False"
223 Opacity="0" />
224 <Border x:Name="ValidationErrorElement"
225 BorderBrush="#FFF3AB00"
226 BorderThickness="1"
227 CornerRadius="1"
228 Visibility="Collapsed">
229 <ToolTipService.ToolTip>
230 <ToolTip x:Name="validationTooltip"
231 DataContext="{Binding RelativeSource={RelativeSource TemplatedParent}}"
232 Placement="Right"
233 PlacementTarget="{Binding RelativeSource={RelativeSource TemplatedParent}}"
234 Template="{StaticResource ValidationToolTipTemplate}">
235 <ToolTip.Triggers>
236 <EventTrigger RoutedEvent="Canvas.Loaded">
237 <EventTrigger.Actions>
238 <BeginStoryboard>
239 <Storyboard>
240 <ObjectAnimationUsingKeyFrames Storyboard.TargetName="validationTooltip" Storyboard.TargetProperty="IsHitTestVisible">
241 <DiscreteObjectKeyFrame KeyTime="0">
242 <DiscreteObjectKeyFrame.Value>
243 <s:Boolean>true</s:Boolean>
244 </DiscreteObjectKeyFrame.Value>
245 </DiscreteObjectKeyFrame>
246 </ObjectAnimationUsingKeyFrames>
247 </Storyboard>
248 </BeginStoryboard>
249 </EventTrigger.Actions>
250 </EventTrigger>
251 </ToolTip.Triggers>
252 </ToolTip>
253 </ToolTipService.ToolTip>
254 <Grid Width="12"
255 Height="12"
256 Margin="1,-4,-4,0"
257 HorizontalAlignment="Right"
258 VerticalAlignment="Top"
259 Background="Transparent">
260 <Path Margin="1,3,0,0"
261 Data="M 1,0 L6,0 A 2,2 90 0 1 8,2 L8,7 z"
262 Fill="#FFF3AB00" />
263 <Path Margin="1,3,0,0"
264 Data="M 0,0 L2,0 L 8,6 L8,8"
265 Fill="#ffffff" />
266 </Grid>
267 </Border>
268 </Grid>
269 </ControlTemplate>
270 </Setter.Value>
271 </Setter>
272 </Style>
273
274 <Style x:Key="DatePickerStyle" TargetType="sdk:DatePicker">
275 <Setter Property="FontFamily" Value="Segoe UI Light" />
276 <Setter Property="FontSize" Value="14" />
277 <Setter Property="Height" Value="24" />
278 <Setter Property="VerticalAlignment" Value="Center" />
279 <Setter Property="IsTabStop" Value="False" />
280 <Setter Property="Background" Value="#FFFFFFFF" />
281 <Setter Property="Padding" Value="2" />
282 <Setter Property="SelectionBackground" Value="#FF444444" />
283 <Setter Property="BorderBrush">
284 <Setter.Value>
285 <LinearGradientBrush StartPoint=".5,1" EndPoint=".5,0">
286 <GradientStop Offset="0" Color="#FF617584" />
287 <GradientStop Offset="0.375" Color="#FF718597" />
288 <GradientStop Offset="0.375" Color="#FF8399A9" />
289 <GradientStop Offset="1" Color="#FFA3AEB9" />
290 </LinearGradientBrush>
291 </Setter.Value>
292 </Setter>
293 <Setter Property="BorderThickness" Value="1" />
294 <Setter Property="Template">
295 <Setter.Value>
296 <ControlTemplate TargetType="sdk:DatePicker">
297 <Grid x:Name="Root">
298 <Grid.Resources>
299 <SolidColorBrush x:Key="DisabledBrush" Color="#8CFFFFFF" />
300 <ControlTemplate x:Key="DropDownButtonTemplate" TargetType="Button">
301 <Grid>
302 <VisualStateManager.VisualStateGroups>
303 <VisualStateGroup x:Name="CommonStates">
304 <VisualStateGroup.Transitions>
305 <VisualTransition GeneratedDuration="0" />
306 <VisualTransition GeneratedDuration="0:0:0.1" To="MouseOver" />
307 <VisualTransition GeneratedDuration="0:0:0.1" To="Pressed" />
308 </VisualStateGroup.Transitions>
309 <VisualState x:Name="Normal" />
310 <VisualState x:Name="MouseOver">
311 <Storyboard>
312 <ColorAnimation Duration="0"
313 Storyboard.TargetName="Background"
314 Storyboard.TargetProperty="(Border.Background).(SolidColorBrush.Color)"
315 To="#FF448DCA" />
316 <ColorAnimationUsingKeyFrames BeginTime="0"
317 Duration="00:00:00.001"
318 Storyboard.TargetName="BackgroundGradient"
319 Storyboard.TargetProperty="(Border.Background).(GradientBrush.GradientStops)[3].(GradientStop.Color)">
320 <SplineColorKeyFrame KeyTime="0" Value="#7FFFFFFF" />
321 </ColorAnimationUsingKeyFrames>
322 <ColorAnimationUsingKeyFrames BeginTime="0"
323 Duration="00:00:00.001"
324 Storyboard.TargetName="BackgroundGradient"
325 Storyboard.TargetProperty="(Border.Background).(GradientBrush.GradientStops)[2].(GradientStop.Color)">
326 <SplineColorKeyFrame KeyTime="0" Value="#CCFFFFFF" />
327 </ColorAnimationUsingKeyFrames>
328 <ColorAnimationUsingKeyFrames BeginTime="0"
329 Duration="00:00:00.001"
330 Storyboard.TargetName="BackgroundGradient"
331 Storyboard.TargetProperty="(Border.Background).(GradientBrush.GradientStops)[1].(GradientStop.Color)">
332 <SplineColorKeyFrame KeyTime="0" Value="#F2FFFFFF" />
333 </ColorAnimationUsingKeyFrames>
334 </Storyboard>
335 </VisualState>
336 <VisualState x:Name="Pressed">
337 <Storyboard>
338 <ColorAnimationUsingKeyFrames BeginTime="0"
339 Duration="00:00:00.001"
340 Storyboard.TargetName="Background"
341 Storyboard.TargetProperty="(Border.Background).(SolidColorBrush.Color)">
342 <SplineColorKeyFrame KeyTime="0" Value="#FF448DCA" />
343 </ColorAnimationUsingKeyFrames>
344 <DoubleAnimationUsingKeyFrames BeginTime="0"
345 Duration="00:00:00.001"
346 Storyboard.TargetName="Highlight"
347 Storyboard.TargetProperty="(UIElement.Opacity)">
348 <SplineDoubleKeyFrame KeyTime="0" Value="1" />
349 </DoubleAnimationUsingKeyFrames>
350 <ColorAnimationUsingKeyFrames BeginTime="0"
351 Duration="00:00:00.001"
352 Storyboard.TargetName="BackgroundGradient"
353 Storyboard.TargetProperty="(Border.Background).(GradientBrush.GradientStops)[1].(GradientStop.Color)">
354 <SplineColorKeyFrame KeyTime="0" Value="#EAFFFFFF" />
355 </ColorAnimationUsingKeyFrames>
356 <ColorAnimationUsingKeyFrames BeginTime="0"
357 Duration="00:00:00.001"
358 Storyboard.TargetName="BackgroundGradient"
359 Storyboard.TargetProperty="(Border.Background).(GradientBrush.GradientStops)[2].(GradientStop.Color)">
360 <SplineColorKeyFrame KeyTime="0" Value="#C6FFFFFF" />
361 </ColorAnimationUsingKeyFrames>
362 <ColorAnimationUsingKeyFrames BeginTime="0"
363 Duration="00:00:00.001"
364 Storyboard.TargetName="BackgroundGradient"
365 Storyboard.TargetProperty="(Border.Background).(GradientBrush.GradientStops)[3].(GradientStop.Color)">
366 <SplineColorKeyFrame KeyTime="0" Value="#6BFFFFFF" />
367 </ColorAnimationUsingKeyFrames>
368 <ColorAnimationUsingKeyFrames BeginTime="0"
369 Duration="00:00:00.001"
370 Storyboard.TargetName="BackgroundGradient"
371 Storyboard.TargetProperty="(Border.Background).(GradientBrush.GradientStops)[0].(GradientStop.Color)">
372 <SplineColorKeyFrame KeyTime="0" Value="#F4FFFFFF" />
373 </ColorAnimationUsingKeyFrames>
374 </Storyboard>
375 </VisualState>
376 <VisualState x:Name="Disabled">
377 <Storyboard>
378 <DoubleAnimationUsingKeyFrames BeginTime="0"
379 Duration="00:00:00.001"
380 Storyboard.TargetName="DisabledVisual"
381 Storyboard.TargetProperty="(UIElement.Opacity)">
382 <SplineDoubleKeyFrame KeyTime="0" Value="1" />
383 </DoubleAnimationUsingKeyFrames>
384 </Storyboard>
385 </VisualState>
386 </VisualStateGroup>
387 </VisualStateManager.VisualStateGroups>
388 <Grid Width="19"
389 Height="18"
390 Margin="0"
391 HorizontalAlignment="Center"
392 VerticalAlignment="Center"
393 Background="#11FFFFFF">
394 <Grid.RowDefinitions>
395 <RowDefinition Height="23*" />
396 <RowDefinition Height="19*" />
397 <RowDefinition Height="19*" />
398 <RowDefinition Height="19*" />
399 </Grid.RowDefinitions>
400 <Grid.ColumnDefinitions>
401 <ColumnDefinition Width="20*" />
402 <ColumnDefinition Width="20*" />
403 <ColumnDefinition Width="20*" />
404 <ColumnDefinition Width="20*" />
405 </Grid.ColumnDefinitions>
406 <Border x:Name="Highlight"
407 Grid.Row="0"
408 Grid.RowSpan="4"
409 Grid.ColumnSpan="4"
410 Margin="-1"
411 BorderBrush="#FF6DBDD1"
412 BorderThickness="1"
413 CornerRadius="0,0,1,1"
414 Opacity="0" />
415 <Border x:Name="Background"
416 Grid.Row="1"
417 Grid.RowSpan="3"
418 Grid.ColumnSpan="4"
419 Margin="0,-1,0,0"
420 Background="#FF1F3B53"
421 BorderBrush="#FFFFFFFF"
422 BorderThickness="1"
423 CornerRadius=".5"
424 Opacity="1" />
425 <Border x:Name="BackgroundGradient"
426 Grid.Row="1"
427 Grid.RowSpan="3"
428 Grid.ColumnSpan="4"
429 Margin="0,-1,0,0"
430 BorderBrush="#BF000000"
431 BorderThickness="1"
432 CornerRadius=".5"
433 Opacity="1">
434 <Border.Background>
435 <LinearGradientBrush StartPoint=".7,0" EndPoint=".7,1">
436 <GradientStop Offset="0" Color="#FFFFFFFF" />
437 <GradientStop Offset="0.375" Color="#F9FFFFFF" />
438 <GradientStop Offset="0.625" Color="#E5FFFFFF" />
439 <GradientStop Offset="1" Color="#C6FFFFFF" />
440 </LinearGradientBrush>
441 </Border.Background>
442 </Border>
443 <Rectangle Grid.RowSpan="1"
444 Grid.ColumnSpan="4"
445 StrokeThickness="1">
446 <Rectangle.Stroke>
447 <LinearGradientBrush StartPoint="0.48,1.25" EndPoint="0.48,-1">
448 <GradientStop Color="#FF494949" />
449 <GradientStop Offset="1" Color="#FF9F9F9F" />
450 </LinearGradientBrush>
451 </Rectangle.Stroke>
452 <Rectangle.Fill>
453 <LinearGradientBrush StartPoint="0.46,1.6" EndPoint="0.3,-1.1">
454 <GradientStop Color="#FF4084BD" />
455 <GradientStop Offset="1" Color="#FFAFCFEA" />
456 </LinearGradientBrush>
457 </Rectangle.Fill>
458 </Rectangle>
459 <Path Grid.Row="1"
460 Grid.RowSpan="3"
461 Grid.Column="0"
462 Grid.ColumnSpan="4"
463 Margin="4,3,4,3"
464 HorizontalAlignment="Center"
465 VerticalAlignment="Center"
466 Data="M11.426758,8.4305077 L11.749023,8.4305077 L11.749023,16.331387 L10.674805,16.331387 L10.674805,10.299648 L9.0742188,11.298672 L9.0742188,10.294277 C9.4788408,10.090176 9.9094238,9.8090878 10.365967,9.4510155 C10.82251,9.0929432 11.176106,8.7527733 11.426758,8.4305077 z M14.65086,8.4305077 L18.566387,8.4305077 L18.566387,9.3435936 L15.671368,9.3435936 L15.671368,11.255703 C15.936341,11.058764 16.27293,10.960293 16.681133,10.960293 C17.411602,10.960293 17.969301,11.178717 18.354229,11.615566 C18.739157,12.052416 18.931622,12.673672 18.931622,13.479336 C18.931622,15.452317 18.052553,16.438808 16.294415,16.438808 C15.560365,16.438808 14.951641,16.234707 14.468243,15.826504 L14.881817,14.929531 C15.368796,15.326992 15.837872,15.525723 16.289043,15.525723 C17.298809,15.525723 17.803692,14.895514 17.803692,13.635098 C17.803692,12.460618 17.305971,11.873379 16.310528,11.873379 C15.83071,11.873379 15.399232,12.079271 15.016094,12.491055 L14.65086,12.238613 z"
467 Fill="#FF2F2F2F"
468 RenderTransformOrigin="0.5,0.5"
469 Stretch="Fill" />
470 <Ellipse Grid.ColumnSpan="4"
471 Width="3"
472 Height="3"
473 HorizontalAlignment="Center"
474 VerticalAlignment="Center"
475 Fill="#FFFFFFFF"
476 StrokeThickness="0" />
477 <Border x:Name="DisabledVisual"
478 Grid.Row="0"
479 Grid.RowSpan="4"
480 Grid.ColumnSpan="4"
481 BorderBrush="#B2FFFFFF"
482 BorderThickness="1"
483 CornerRadius="0,0,.5,.5"
484 Opacity="0" />
485 </Grid>
486 </Grid>
487 </ControlTemplate>
488 </Grid.Resources>
489 <VisualStateManager.VisualStateGroups>
490 <VisualStateGroup x:Name="CommonStates">
491 <VisualState x:Name="Normal" />
492 <VisualState x:Name="Disabled">
493 <Storyboard>
494 <DoubleAnimation Duration="0"
495 Storyboard.TargetName="DisabledVisual"
496 Storyboard.TargetProperty="Opacity"
497 To="1" />
498 </Storyboard>
499 </VisualState>
500 </VisualStateGroup>
501 <VisualStateGroup x:Name="ValidationStates">
502 <VisualState x:Name="Valid" />
503 <VisualState x:Name="InvalidUnfocused">
504 <Storyboard>
505 <ObjectAnimationUsingKeyFrames Storyboard.TargetName="ValidationErrorElement" Storyboard.TargetProperty="Visibility">
506 <DiscreteObjectKeyFrame KeyTime="0">
507 <DiscreteObjectKeyFrame.Value>
508 <Visibility>Visible</Visibility>
509 </DiscreteObjectKeyFrame.Value>
510 </DiscreteObjectKeyFrame>
511 </ObjectAnimationUsingKeyFrames>
512 </Storyboard>
513 </VisualState>
514 <VisualState x:Name="InvalidFocused">
515 <Storyboard>
516 <ObjectAnimationUsingKeyFrames Storyboard.TargetName="ValidationErrorElement" Storyboard.TargetProperty="Visibility">
517 <DiscreteObjectKeyFrame KeyTime="0">
518 <DiscreteObjectKeyFrame.Value>
519 <Visibility>Visible</Visibility>
520 </DiscreteObjectKeyFrame.Value>
521 </DiscreteObjectKeyFrame>
522 </ObjectAnimationUsingKeyFrames>
523 <ObjectAnimationUsingKeyFrames Storyboard.TargetName="validationTooltip" Storyboard.TargetProperty="IsOpen">
524 <DiscreteObjectKeyFrame KeyTime="0">
525 <DiscreteObjectKeyFrame.Value>
526 <s:Boolean>True</s:Boolean>
527 </DiscreteObjectKeyFrame.Value>
528 </DiscreteObjectKeyFrame>
529 </ObjectAnimationUsingKeyFrames>
530 </Storyboard>
531 </VisualState>
532 </VisualStateGroup>
533 </VisualStateManager.VisualStateGroups>
534 <Grid.ColumnDefinitions>
535 <ColumnDefinition Width="*" />
536 <ColumnDefinition Width="Auto" />
537 </Grid.ColumnDefinitions>
538 <p:DatePickerTextBox x:Name="TextBox"
539 Grid.Column="0"
540 Background="{TemplateBinding Background}"
541 BorderBrush="{TemplateBinding BorderBrush}"
542 BorderThickness="{TemplateBinding BorderThickness}"
543 Padding="{TemplateBinding Padding}"
544 SelectionBackground="{TemplateBinding SelectionBackground}" />
545 <Button x:Name="Button"
546 Grid.Column="1"
547 Width="20"
548 Margin="2,0,2,0"
549 BorderBrush="{TemplateBinding BorderBrush}"
550 BorderThickness="{TemplateBinding BorderThickness}"
551 Foreground="{TemplateBinding Foreground}"
552 Template="{StaticResource DropDownButtonTemplate}" />
553 <Grid x:Name="DisabledVisual"
554 Grid.ColumnSpan="2"
555 IsHitTestVisible="False"
556 Opacity="0">
557 <Grid.ColumnDefinitions>
558 <ColumnDefinition Width="*" />
559 <ColumnDefinition Width="Auto" />
560 </Grid.ColumnDefinitions>
561 <Rectangle Fill="#8CFFFFFF"
562 RadiusX="1"
563 RadiusY="1" />
564 <Rectangle Grid.Column="1"
565 Width="19"
566 Height="18"
567 Margin="2,0,2,0"
568 Fill="#8CFFFFFF"
569 RadiusX="1"
570 RadiusY="1" />
571 </Grid>
572 <Popup x:Name="Popup" />
573 <Border x:Name="ValidationErrorElement"
574 BorderBrush="#FFF3AB00"
575 BorderThickness="1"
576 CornerRadius="1"
577 Visibility="Collapsed">
578 <ToolTipService.ToolTip>
579 <ToolTip x:Name="validationTooltip"
580 DataContext="{Binding RelativeSource={RelativeSource TemplatedParent}}"
581 Placement="Right"
582 PlacementTarget="{Binding RelativeSource={RelativeSource TemplatedParent}}"
583 Template="{StaticResource ValidationToolTipTemplate}">
584 <ToolTip.Triggers>
585 <EventTrigger RoutedEvent="Canvas.Loaded">
586 <BeginStoryboard>
587 <Storyboard>
588 <ObjectAnimationUsingKeyFrames Storyboard.TargetName="validationTooltip" Storyboard.TargetProperty="IsHitTestVisible">
589 <DiscreteObjectKeyFrame KeyTime="0">
590 <DiscreteObjectKeyFrame.Value>
591 <s:Boolean>true</s:Boolean>
592 </DiscreteObjectKeyFrame.Value>
593 </DiscreteObjectKeyFrame>
594 </ObjectAnimationUsingKeyFrames>
595 </Storyboard>
596 </BeginStoryboard>
597 </EventTrigger>
598 </ToolTip.Triggers>
599 </ToolTip>
600 </ToolTipService.ToolTip>
601 <Grid Width="12"
602 Height="12"
603 Margin="1,-4,-4,0"
604 HorizontalAlignment="Right"
605 VerticalAlignment="Top"
606 Background="Transparent">
607 <Path Margin="1,3,0,0"
608 Data="M 1,0 L6,0 A 2,2 90 0 1 8,2 L8,7 z"
609 Fill="#FFF3AB00" />
610 <Path Margin="1,3,0,0"
611 Data="M 0,0 L2,0 L 8,6 L8,8"
612 Fill="#ffffff" />
613 </Grid>
614 </Border>
615 </Grid>
616 </ControlTemplate>
617 </Setter.Value>
618 </Setter>
619 </Style>
620
621 <Style x:Key="ButtonStyle" TargetType="Button">
622 <Setter Property="Height" Value="22" />
623 <Setter Property="Margin" Value="5,0,0,0" />
624 <Setter Property="VerticalAlignment" Value="Center" />
625 <Setter Property="Width" Value="60" />
626 </Style>
627
628 <Style x:Key="ValidationSummaryStyle" TargetType="sdk:ValidationSummary">
629 <Setter Property="IsTabStop" Value="False" />
630 <Setter Property="Background" Value="#FFEFEFEA" />
631 <Setter Property="BorderBrush" Value="#FFCECEC7" />
632 <Setter Property="BorderThickness" Value="1" />
633 <Setter Property="Padding" Value="0" />
634
635 <Setter Property="HeaderTemplate">
636 <Setter.Value>
637 <DataTemplate>
638 <Border x:Name="Header"
639 Margin="-1,-1,-1,0"
640 Background="#FFF3AB00"
641 CornerRadius="2">
642 <StackPanel Margin="6,2,6,4"
643 VerticalAlignment="Top"
644 Orientation="Horizontal">
645 <Grid Width="13" Height="13">
646 <Ellipse Margin="0" RenderTransformOrigin="0.5,0.5">
647 <Ellipse.Fill>
648 <LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
649 <GradientStop Offset="0" Color="#FFFFFFFF" />
650 <GradientStop Offset="1" Color="#FFFDC8C8" />
651 </LinearGradientBrush>
652 </Ellipse.Fill>
653 <Ellipse.Stroke>
654 <LinearGradientBrush StartPoint="0.505,0.65" EndPoint="0.5,0.058">
655 <GradientStop Offset="0" Color="#FFF3AB00" />
656 <GradientStop Offset="0.991" Color="#FFFF9298" />
657 </LinearGradientBrush>
658 </Ellipse.Stroke>
659 </Ellipse>
660 <Path Data="M5.5,2.5 L7.5,2.5 L7.5,8 L5.5,8 M5.5,9.5 L7.5,9.5 L7.5,10.5 L5.5,10.5" Fill="#DDD43940" />
661 </Grid>
662 <TextBlock FontWeight="Bold"
663 Foreground="#FFFFFFFF"
664 Padding="4,1,0,0"
665 Text="{Binding}" />
666 </StackPanel>
667 </Border>
668 </DataTemplate>
669 </Setter.Value>
670 </Setter>
671 <Setter Property="ErrorStyle">
672 <Setter.Value>
673 <Style TargetType="ListBoxItem">
674 <Setter Property="Template">
675 <Setter.Value>
676 <ControlTemplate TargetType="ListBoxItem">
677 <Grid Background="{TemplateBinding Background}">
678 <VisualStateManager.VisualStateGroups>
679 <VisualStateGroup x:Name="CommonStates">
680 <VisualState x:Name="Normal" />
681 <VisualState x:Name="MouseOver">
682 <Storyboard>
683 <DoubleAnimation Duration="0"
684 Storyboard.TargetName="FillColor"
685 Storyboard.TargetProperty="Opacity"
686 To=".35" />
687 </Storyboard>
688 </VisualState>
689 <VisualState x:Name="Disabled">
690 <Storyboard>
691 <DoubleAnimation Duration="0"
692 Storyboard.TargetName="ContentPresenter"
693 Storyboard.TargetProperty="Opacity"
694 To=".55" />
695 </Storyboard>
696 </VisualState>
697 </VisualStateGroup>
698 <VisualStateGroup x:Name="SelectionStates">
699 <VisualState x:Name="Unselected" />
700 <VisualState x:Name="Selected">
701 <Storyboard>
702 <DoubleAnimation Duration="0"
703 Storyboard.TargetName="FillColor2"
704 Storyboard.TargetProperty="Opacity"
705 To=".75" />
706 </Storyboard>
707 </VisualState>
708 </VisualStateGroup>
709 <VisualStateGroup x:Name="FocusStates">
710 <VisualState x:Name="Focused">
711 <Storyboard>
712 <ObjectAnimationUsingKeyFrames Duration="0"
713 Storyboard.TargetName="FocusVisualElement"
714 Storyboard.TargetProperty="Visibility">
715 <DiscreteObjectKeyFrame KeyTime="0" Value="Visible" />
716 </ObjectAnimationUsingKeyFrames>
717 </Storyboard>
718 </VisualState>
719 <VisualState x:Name="Unfocused" />
720 </VisualStateGroup>
721 </VisualStateManager.VisualStateGroups>
722 <Rectangle x:Name="FillColor"
723 Fill="#59F7D8DB"
724 IsHitTestVisible="False"
725 Opacity="0"
726 RadiusX="1"
727 RadiusY="1" />
728 <Rectangle x:Name="FillColor2"
729 Fill="#FFF7D8DB"
730 IsHitTestVisible="False"
731 Opacity="0"
732 RadiusX="1"
733 RadiusY="1" />
734 <ContentPresenter x:Name="ContentPresenter"
735 Margin="{TemplateBinding Padding}"
736 HorizontalAlignment="Left"
737 Content="{TemplateBinding Content}"
738 ContentTemplate="{TemplateBinding ContentTemplate}" />
739 <Rectangle x:Name="FocusVisualElement"
740 RadiusX="1"
741 RadiusY="1"
742 Stroke="#FFF7D8DB"
743 StrokeThickness="1"
744 Visibility="Collapsed" />
745 </Grid>
746 </ControlTemplate>
747 </Setter.Value>
748 </Setter>
749 </Style>
750 </Setter.Value>
751 </Setter>
752 <Setter Property="Template">
753 <Setter.Value>
754 <ControlTemplate TargetType="sdk:ValidationSummary">
755 <Grid x:Name="ValidationSummary">
756 <VisualStateManager.VisualStateGroups>
757 <VisualStateGroup x:Name="CommonStates">
758 <VisualState x:Name="Normal" />
759 <VisualState x:Name="Disabled">
760 <Storyboard>
761 <ObjectAnimationUsingKeyFrames Duration="0"
762 Storyboard.TargetName="DisabledVisual"
763 Storyboard.TargetProperty="Visibility">
764 <DiscreteObjectKeyFrame KeyTime="0" Value="Visible" />
765 </ObjectAnimationUsingKeyFrames>
766 </Storyboard>
767 </VisualState>
768 </VisualStateGroup>
769 <VisualStateGroup x:Name="ValidationStates">
770 <VisualState x:Name="Empty">
771 <Storyboard>
772 <ObjectAnimationUsingKeyFrames Duration="0"
773 Storyboard.TargetName="Content"
774 Storyboard.TargetProperty="Visibility">
775 <DiscreteObjectKeyFrame KeyTime="0" Value="Collapsed" />
776 </ObjectAnimationUsingKeyFrames>
777 </Storyboard>
778 </VisualState>
779 <VisualState x:Name="HasErrors" />
780 </VisualStateGroup>
781 </VisualStateManager.VisualStateGroups>
782 <Border x:Name="Content"
783 Background="{TemplateBinding Background}"
784 BorderBrush="{TemplateBinding BorderBrush}"
785 BorderThickness="{TemplateBinding BorderThickness}"
786 CornerRadius="0,0,2,2">
787 <Grid>
788 <Grid.RowDefinitions>
789 <RowDefinition Height="Auto" />
790 <RowDefinition Height="*" />
791 </Grid.RowDefinitions>
792 <ListBox x:Name="SummaryListBox"
793 Grid.Row="1"
794 Height="Auto"
795 Background="{x:Null}"
796 BorderThickness="0"
797 Foreground="{TemplateBinding Foreground}"
798 ItemContainerStyle="{TemplateBinding ErrorStyle}"
799 Padding="{TemplateBinding Padding}"
800 Style="{TemplateBinding SummaryListBoxStyle}">
801 <ListBox.ItemTemplate>
802 <DataTemplate>
803 <StackPanel Orientation="Horizontal">
804 <TextBlock Margin="4,0,0,0"
805 FontWeight="Bold"
806 Text="{Binding MessageHeader}" />
807 <TextBlock Margin="4,0,0,0" Text="{Binding Message}" />
808 </StackPanel>
809 </DataTemplate>
810 </ListBox.ItemTemplate>
811 </ListBox>
812 <Border x:Name="DisabledVisual"
813 Grid.RowSpan="2"
814 Background="#80FFFFFF"
815 IsHitTestVisible="True"
816 Visibility="Collapsed" />
817 <ContentControl x:Name="HeaderContentControl"
818 HorizontalContentAlignment="Stretch"
819 VerticalContentAlignment="Center"
820 Content="{TemplateBinding Header}"
821 ContentTemplate="{TemplateBinding HeaderTemplate}"
822 IsTabStop="False" />
823 </Grid>
824 </Border>
825 </Grid>
826 </ControlTemplate>
827 </Setter.Value>
828 </Setter>
829 </Style>
830
831 <Style x:Key="PasswordBoxStyle" TargetType="PasswordBox">
832 <Setter Property="FontFamily" Value="Segoe UI Light" />
833 <Setter Property="FontSize" Value="12" />
834 <Setter Property="Height" Value="24" />
835 <Setter Property="VerticalAlignment" Value="Center" />
836 <Setter Property="BorderThickness" Value="1" />
837 <Setter Property="Background" Value="#FFFFFFFF" />
838 <Setter Property="Foreground" Value="#FF000000" />
839 <Setter Property="Padding" Value="2" />
840 <Setter Property="BorderBrush">
841 <Setter.Value>
842 <LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
843 <GradientStop Offset="0" Color="#FFA3AEB9" />
844 <GradientStop Offset="0.375" Color="#FF8399A9" />
845 <GradientStop Offset="0.375" Color="#FF718597" />
846 <GradientStop Offset="1" Color="#FF617584" />
847 </LinearGradientBrush>
848 </Setter.Value>
849 </Setter>
850 <Setter Property="Template">
851 <Setter.Value>
852 <ControlTemplate TargetType="PasswordBox">
853 <Grid x:Name="RootElement">
854 <VisualStateManager.VisualStateGroups>
855 <VisualStateGroup x:Name="CommonStates">
856 <VisualState x:Name="Normal" />
857 <VisualState x:Name="MouseOver">
858 <Storyboard>
859 <ColorAnimation Duration="0"
860 Storyboard.TargetName="MouseOverBorder"
861 Storyboard.TargetProperty="(Border.BorderBrush).(SolidColorBrush.Color)"
862 To="#FF99C1E2" />
863 </Storyboard>
864 </VisualState>
865 <VisualState x:Name="Disabled">
866 <Storyboard>
867 <DoubleAnimation Duration="0"
868 Storyboard.TargetName="DisabledVisualElement"
869 Storyboard.TargetProperty="Opacity"
870 To="1" />
871 </Storyboard>
872 </VisualState>
873 </VisualStateGroup>
874 <VisualStateGroup x:Name="FocusStates">
875 <VisualState x:Name="Focused">
876 <Storyboard>
877 <DoubleAnimation Duration="0"
878 Storyboard.TargetName="FocusVisualElement"
879 Storyboard.TargetProperty="Opacity"
880 To="1" />
881 </Storyboard>
882 </VisualState>
883 <VisualState x:Name="Unfocused">
884 <Storyboard>
885 <DoubleAnimation Duration="0"
886 Storyboard.TargetName="FocusVisualElement"
887 Storyboard.TargetProperty="Opacity"
888 To="0" />
889 </Storyboard>
890 </VisualState>
891 </VisualStateGroup>
892 <VisualStateGroup x:Name="ValidationStates">
893 <VisualState x:Name="Valid" />
894 <VisualState x:Name="InvalidUnfocused">
895 <Storyboard>
896 <ObjectAnimationUsingKeyFrames Storyboard.TargetName="ValidationErrorElement" Storyboard.TargetProperty="Visibility">
897 <DiscreteObjectKeyFrame KeyTime="0">
898 <DiscreteObjectKeyFrame.Value>
899 <Visibility>Visible</Visibility>
900 </DiscreteObjectKeyFrame.Value>
901 </DiscreteObjectKeyFrame>
902 </ObjectAnimationUsingKeyFrames>
903 </Storyboard>
904 </VisualState>
905 <VisualState x:Name="InvalidFocused">
906 <Storyboard>
907 <ObjectAnimationUsingKeyFrames Storyboard.TargetName="ValidationErrorElement" Storyboard.TargetProperty="Visibility">
908 <DiscreteObjectKeyFrame KeyTime="0">
909 <DiscreteObjectKeyFrame.Value>
910 <Visibility>Visible</Visibility>
911 </DiscreteObjectKeyFrame.Value>
912 </DiscreteObjectKeyFrame>
913 </ObjectAnimationUsingKeyFrames>
914 <ObjectAnimationUsingKeyFrames Storyboard.TargetName="validationTooltip" Storyboard.TargetProperty="IsOpen">
915 <DiscreteObjectKeyFrame KeyTime="0">
916 <DiscreteObjectKeyFrame.Value>
917 <s:Boolean>True</s:Boolean>
918 </DiscreteObjectKeyFrame.Value>
919 </DiscreteObjectKeyFrame>
920 </ObjectAnimationUsingKeyFrames>
921 </Storyboard>
922 </VisualState>
923 </VisualStateGroup>
924 </VisualStateManager.VisualStateGroups>
925 <Border x:Name="Border"
926 Background="{TemplateBinding Background}"
927 BorderBrush="{TemplateBinding BorderBrush}"
928 BorderThickness="{TemplateBinding BorderThickness}"
929 CornerRadius="1"
930 Opacity="1">
931 <Border x:Name="MouseOverBorder"
932 BorderBrush="Transparent"
933 BorderThickness="1">
934 <Border x:Name="ContentElement" Margin="{TemplateBinding Padding}" />
935 </Border>
936 </Border>
937 <Border x:Name="DisabledVisualElement"
938 Background="#A5F7F7F7"
939 BorderBrush="#A5F7F7F7"
940 BorderThickness="{TemplateBinding BorderThickness}"
941 IsHitTestVisible="False"
942 Opacity="0" />
943 <Border x:Name="FocusVisualElement"
944 Margin="1"
945 BorderBrush="#FF6DBDD1"
946 BorderThickness="{TemplateBinding BorderThickness}"
947 IsHitTestVisible="False"
948 Opacity="0" />
949 <Border x:Name="ValidationErrorElement"
950 BorderBrush="#FFF3AB00"
951 BorderThickness="1"
952 CornerRadius="1"
953 Visibility="Collapsed">
954 <ToolTipService.ToolTip>
955 <ToolTip x:Name="validationTooltip"
956 DataContext="{Binding RelativeSource={RelativeSource TemplatedParent}}"
957 Placement="Right"
958 PlacementTarget="{Binding RelativeSource={RelativeSource TemplatedParent}}"
959 Template="{StaticResource ValidationToolTipTemplate}">
960 <ToolTip.Triggers>
961 <EventTrigger RoutedEvent="Canvas.Loaded">
962 <BeginStoryboard>
963 <Storyboard>
964 <ObjectAnimationUsingKeyFrames Storyboard.TargetName="validationTooltip" Storyboard.TargetProperty="IsHitTestVisible">
965 <DiscreteObjectKeyFrame KeyTime="0">
966 <DiscreteObjectKeyFrame.Value>
967 <s:Boolean>true</s:Boolean>
968 </DiscreteObjectKeyFrame.Value>
969 </DiscreteObjectKeyFrame>
970 </ObjectAnimationUsingKeyFrames>
971 </Storyboard>
972 </BeginStoryboard>
973 </EventTrigger>
974 </ToolTip.Triggers>
975 </ToolTip>
976 </ToolTipService.ToolTip>
977 <Grid Width="12"
978 Height="12"
979 Margin="1,-4,-4,0"
980 HorizontalAlignment="Right"
981 VerticalAlignment="Top"
982 Background="Transparent">
983 <Path Margin="1,3,0,0"
984 Data="M 1,0 L6,0 A 2,2 90 0 1 8,2 L8,7 z"
985 Fill="#FFF3AB00" />
986 <Path Margin="1,3,0,0"
987 Data="M 0,0 L2,0 L 8,6 L8,8"
988 Fill="#ffffff" />
989 </Grid>
990 </Border>
991 </Grid>
992 </ControlTemplate>
993 </Setter.Value>
994 </Setter>
995 </Style>
996 </Application.Resources>
997 </Application>