Skip to content

Commit a4c3203

Browse files
JeffBarnardKeboo
authored andcommitted
Date/TimePicker disabled style update, ammends #838 (#919)
* Date/TimePicker disabled style update, ammends #838 * fix conflicts
1 parent 54b7008 commit a4c3203

File tree

3 files changed

+38
-13
lines changed

3 files changed

+38
-13
lines changed

MainDemo.Wpf/Pickers.xaml

Lines changed: 17 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,10 @@
4141
</DatePicker.SelectedDate>
4242
</DatePicker>
4343
</smtx:XamlDisplay>
44-
<smtx:XamlDisplay Key="pickers_3" HorizontalAlignment="Left" Margin="0 32 0 0">
44+
<smtx:XamlDisplay Key="pickers_2_disabled" HorizontalAlignment="Left" Margin="0 16 0 0" >
45+
<DatePicker IsEnabled="False" Width="100" materialDesign:HintAssist.Hint="Disabled" />
46+
</smtx:XamlDisplay>
47+
<smtx:XamlDisplay Key="pickers_3" HorizontalAlignment="Left" Margin="0 32 0 0">
4548
<ComboBox Name="LocaleCombo" Width="50">
4649
<ComboBox.ItemsPanel>
4750
<ItemsPanelTemplate>
@@ -57,11 +60,19 @@
5760
<DatePicker Name="LocaleDatePickerRTL" Width="120" materialDesign:HintAssist.Hint="RTL Locale Date" FlowDirection="RightToLeft" />
5861
</smtx:XamlDisplay>
5962
</StackPanel>
60-
<smtx:XamlDisplay Key="pickers_6" Grid.Row="1" Grid.Column="1" HorizontalAlignment="Left" Margin="0 16 0 0" VerticalAlignment="Top">
61-
<materialDesign:TimePicker Width="100"
62-
Style="{StaticResource MaterialDesignFloatingHintTimePicker}"
63-
materialDesign:HintAssist.Hint="Custom hint" />
64-
</smtx:XamlDisplay>
63+
<StackPanel Grid.Row="1" Grid.Column="1" >
64+
<smtx:XamlDisplay Key="pickers_6" HorizontalAlignment="Left" Margin="0 16 0 0" VerticalAlignment="Top">
65+
<materialDesign:TimePicker Width="100"
66+
Style="{StaticResource MaterialDesignFloatingHintTimePicker}"
67+
materialDesign:HintAssist.Hint="Custom hint" />
68+
</smtx:XamlDisplay>
69+
<smtx:XamlDisplay Key="pickers_6_disabled" Grid.Row="2" Grid.Column="1" HorizontalAlignment="Left" Margin="0 16 0 0" VerticalAlignment="Top">
70+
<materialDesign:TimePicker Width="100" IsEnabled="False"
71+
Style="{StaticResource MaterialDesignFloatingHintTimePicker}"
72+
materialDesign:HintAssist.Hint="Disabled" />
73+
</smtx:XamlDisplay>
74+
</StackPanel>
75+
6576
<smtx:XamlDisplay Key="pickers_7" Grid.Row="1" Grid.Column="2" VerticalAlignment="Top" HorizontalAlignment="Left" Margin="0 16 0 0">
6677
<materialDesign:TimePicker Is24Hours="True" x:Name="PresetTimePicker" Width="100" SelectedTimeChanged="PresetTimePicker_SelectedTimeChanged"/>
6778
</smtx:XamlDisplay>

MaterialDesignThemes.Wpf/Themes/MaterialDesignTheme.DatePicker.xaml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,8 @@
99
</ResourceDictionary.MergedDictionaries>
1010

1111
<converters:TextFieldHintVisibilityConverter x:Key="TextFieldHintVisibilityConverter" />
12-
12+
<converters:MathConverter Operation="Divide" x:Key="DivisionMathConverter" />
13+
1314
<Style x:Key="MaterialDesignDatePickerTextBox" TargetType="{x:Type DatePickerTextBox}">
1415
<Setter Property="Foreground" Value="{Binding RelativeSource={RelativeSource AncestorType={x:Type FrameworkElement}}, Path=(TextElement.Foreground)}" />
1516
<Setter Property="wpf:TextFieldAssist.TextBoxViewMargin" Value="0 0 0 0" />
@@ -185,11 +186,17 @@
185186
PopupAnimation="Fade" />
186187
</Grid>
187188
</Border>
189+
<Line x:Name="DashedLine" VerticalAlignment="Bottom" Visibility="Hidden"
190+
StrokeThickness="{Binding BorderThickness.Bottom, ElementName=border, Converter={StaticResource DivisionMathConverter}, ConverterParameter=0.75}" StrokeDashArray="1,2.5" StrokeDashCap="Round"
191+
X1="0" X2="{Binding ActualWidth, ElementName=border}" Y1="0" Y2="0"
192+
Stroke="{TemplateBinding BorderBrush}" Opacity="0.56" />
188193
<wpf:Underline x:Name="Underline" Visibility="{Binding Path=(wpf:TextFieldAssist.DecorationVisibility), RelativeSource={RelativeSource TemplatedParent}}" />
189194
</Grid>
190195
<ControlTemplate.Triggers>
191196
<Trigger Property="IsEnabled" Value="false">
192197
<Setter Property="Opacity" TargetName="border" Value="0.56" />
198+
<Setter Property="Visibility" TargetName="DashedLine" Value="Visible" />
199+
<Setter Property="BorderBrush" TargetName="border" Value="Transparent" />
193200
</Trigger>
194201
<Trigger Property="IsMouseOver" Value="true">
195202
<Setter Property="BorderBrush" Value="{DynamicResource PrimaryHueMidBrush}" />

MaterialDesignThemes.Wpf/Themes/MaterialDesignTheme.TimePicker.xaml

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,14 +8,15 @@
88
</ResourceDictionary.MergedDictionaries>
99

1010
<converters:TextFieldHintVisibilityConverter x:Key="TextFieldHintVisibilityConverter" />
11+
<converters:MathConverter Operation="Divide" x:Key="DivisionMathConverter" />
1112

1213
<Style x:Key="MaterialDesignTimePicker" TargetType="{x:Type wpf:TimePicker}">
13-
<Setter Property="VerticalAlignment" Value="Top"/>
14-
<Setter Property="Foreground" Value="{Binding RelativeSource={RelativeSource AncestorType={x:Type FrameworkElement}}, Path=(TextElement.Foreground)}"/>
15-
<Setter Property="BorderBrush" Value="{DynamicResource MaterialDesignTextBoxBorder}" />
16-
<Setter Property="Background" Value="Transparent"/>
17-
<Setter Property="BorderThickness" Value="0 0 0 1"/>
18-
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
14+
<Setter Property="VerticalAlignment" Value="Top"/>
15+
<Setter Property="Foreground" Value="{Binding RelativeSource={RelativeSource AncestorType={x:Type FrameworkElement}}, Path=(TextElement.Foreground)}"/>
16+
<Setter Property="BorderBrush" Value="{DynamicResource MaterialDesignTextBoxBorder}" />
17+
<Setter Property="Background" Value="Transparent"/>
18+
<Setter Property="BorderThickness" Value="0 0 0 1"/>
19+
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
1920
<Setter Property="IsTabStop" Value="False"/>
2021
<Setter Property="Margin" Value="0 12 0 0" />
2122
<Setter Property="wpf:HintAssist.Hint" Value="Select time" />
@@ -118,11 +119,17 @@
118119
PopupAnimation="Fade"/>
119120
</Grid>
120121
</Border>
122+
<Line x:Name="DashedLine" VerticalAlignment="Bottom" Visibility="Hidden"
123+
StrokeThickness="{Binding BorderThickness.Bottom, ElementName=border, Converter={StaticResource DivisionMathConverter}, ConverterParameter=0.75}" StrokeDashArray="1,2.5" StrokeDashCap="Round"
124+
X1="0" X2="{Binding ActualWidth, ElementName=border}" Y1="0" Y2="0"
125+
Stroke="{TemplateBinding BorderBrush}" Opacity="0.56" />
121126
<wpf:Underline x:Name="Underline" Visibility="{Binding Path=(wpf:TextFieldAssist.DecorationVisibility), RelativeSource={RelativeSource TemplatedParent}}"/>
122127
</Grid>
123128
<ControlTemplate.Triggers>
124129
<Trigger Property="IsEnabled" Value="False">
125130
<Setter Property="Opacity" TargetName="TemplateRoot" Value="0.56"/>
131+
<Setter Property="Visibility" TargetName="DashedLine" Value="Visible" />
132+
<Setter Property="BorderBrush" TargetName="border" Value="Transparent"/>
126133
</Trigger>
127134
<Trigger Property="IsMouseOver" Value="true">
128135
<Setter Property="BorderBrush" Value="{DynamicResource PrimaryHueMidBrush}"/>

0 commit comments

Comments
 (0)