Skip to content

Commit 2cd22c6

Browse files
committed
Merge branch 'master' into FishNChips
2 parents 03e5fd8 + 6390677 commit 2cd22c6

30 files changed

+953
-897
lines changed

MahMaterialDragablzMashUp/FlyoutContent.xaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
</ResourceDictionary>
1616
</UserControl.Resources>
1717
<StackPanel Margin="24">
18-
<TextBox Style="{StaticResource MaterialDesignFloatingHintTextBox}" FontSize="18" wpf:TextFieldAssist.Hint="Your Name" MinWidth="120" />
19-
<TextBox Style="{StaticResource MaterialDesignFloatingHintTextBox}" wpf:TextFieldAssist.Hint="Location" MinWidth="120" Margin="0 8 0 0" />
18+
<TextBox Style="{StaticResource MaterialDesignFloatingHintTextBox}" FontSize="18" MinWidth="120" />
19+
<TextBox Style="{StaticResource MaterialDesignFloatingHintTextBox}" MinWidth="120" Margin="0 8 0 0" />
2020
</StackPanel>
2121
</UserControl>

MainDemo.Wpf/ColorZones.xaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@
5353
<Button Style="{DynamicResource MaterialDesignToolButton}">
5454
<materialDesign:PackIcon Kind="Magnify" Opacity=".56" />
5555
</Button>
56-
<TextBox Grid.Column="1" Margin="8 0 0 0" materialDesign:TextFieldAssist.Hint="Build a search bar"
56+
<TextBox Grid.Column="1" Margin="8 0 0 0" materialDesign:HintAssist.Hint="Build a search bar"
5757
materialDesign:TextFieldAssist.DecorationVisibility="Hidden" BorderThickness="0"
5858
MinWidth="200" VerticalAlignment="Center" />
5959
<Button Style="{DynamicResource MaterialDesignToolButton}" Grid.Column="2">

MainDemo.Wpf/Domain/Sample4Dialog.xaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
<RowDefinition />
1111
<RowDefinition />
1212
</Grid.RowDefinitions>
13-
<TextBox wpf:TextFieldAssist.Hint="Name" Style="{DynamicResource MaterialDesignFloatingHintTextBox}"
13+
<TextBox wpf:HintAssist.Hint="Name" Style="{DynamicResource MaterialDesignFloatingHintTextBox}"
1414
Margin="0 6 0 0"
1515
FontSize="18" Grid.Row="0"
1616
/>

MainDemo.Wpf/Domain/SampleDialog.xaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
<RowDefinition />
1818
</Grid.RowDefinitions>
1919
<TextBlock>New contact:</TextBlock>
20-
<TextBox wpf:TextFieldAssist.Hint="Name" Style="{DynamicResource MaterialDesignFloatingHintTextBox}"
20+
<TextBox wpf:HintAssist.Hint="Name" Style="{DynamicResource MaterialDesignFloatingHintTextBox}"
2121
Margin="0 6 0 0"
2222
FontSize="18" Grid.Row="1">
2323
<TextBox.Text>
@@ -28,7 +28,7 @@
2828
</Binding>
2929
</TextBox.Text>
3030
</TextBox>
31-
<TextBox wpf:TextFieldAssist.Hint="Number" Style="{DynamicResource MaterialDesignFloatingHintTextBox}"
31+
<TextBox wpf:HintAssist.Hint="Number" Style="{DynamicResource MaterialDesignFloatingHintTextBox}"
3232
Margin="0 8 0 0"
3333
FontSize="16" Grid.Row="2"
3434
/>

MainDemo.Wpf/IconPack.xaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@
6666
<materialDesign:PackIcon Kind="Magnify" Opacity=".56" />
6767
</Button>
6868
<TextBox Grid.Column="1" Margin="5 0 0 0" KeyDown="Search_OnKeyDown"
69-
materialDesign:TextFieldAssist.Hint="Search" x:Name="SearchBox"
69+
materialDesign:HintAssist.Hint="Search" x:Name="SearchBox"
7070
materialDesign:TextFieldAssist.DecorationVisibility="Hidden" BorderThickness="0"
7171
MinWidth="200" VerticalAlignment="Center" />
7272
</Grid>

MainDemo.Wpf/Pickers.xaml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,12 @@
2020
</Grid.ColumnDefinitions>
2121
<TextBlock Grid.ColumnSpan="3">Classic WPF DatePicker control with Material Design theme, and new TimePicker control:</TextBlock>
2222
<StackPanel Grid.Row="1" Grid.Column="0">
23-
<DatePicker Width="100" HorizontalAlignment="Left" Margin="0 16 0 0" materialDesign:TextFieldAssist.Hint="Pick Date" />
24-
<DatePicker x:Name="FutureDatePicker" Width="100" HorizontalAlignment="Left" Margin="0 16 0 0" materialDesign:TextFieldAssist.Hint="Future Date" />
23+
<DatePicker Width="100" HorizontalAlignment="Left" Margin="0 16 0 0" materialDesign:HintAssist.Hint="Pick Date" Style="{StaticResource MaterialDesignFloatingHintDatePicker}" />
24+
<DatePicker x:Name="FutureDatePicker" Width="100" HorizontalAlignment="Left" Margin="0 16 0 0" materialDesign:HintAssist.Hint="Future Date" />
2525
</StackPanel>
2626
<materialDesign:TimePicker Grid.Row="1" Grid.Column="1" VerticalAlignment="Top" Width="100" HorizontalAlignment="Left" Margin="0 16 0 0"
27-
materialDesign:TextFieldAssist.Hint="Custom hint" />
27+
Style="{StaticResource MaterialDesignFloatingHintTimePicker}"
28+
materialDesign:HintAssist.Hint="Custom hint" />
2829
<materialDesign:TimePicker Grid.Row="1" Grid.Column="2" Is24Hours="True" x:Name="PresetTimePicker" VerticalAlignment="Top" Width="100" HorizontalAlignment="Left" Margin="0 16 0 0" />
2930

3031
<TextBlock Grid.Row="2" Grid.ColumnSpan="3" Margin="0 128 0 0">By combining the DialogHost (see MainWindow.xaml) and the Calendar and Clock controls, custom popups can be built.</TextBlock>

MainDemo.Wpf/TextFields.xaml

Lines changed: 42 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@
6868
<materialDesign:PackIcon Grid.Row="1" Grid.Column="0" Kind="Account" Foreground="{Binding ElementName=NameTextBox, Path=BorderBrush}" />
6969
<TextBox Grid.Row="1" Grid.Column="1"
7070
x:Name="NameTextBox"
71-
materialDesign:TextFieldAssist.Hint="Name">
71+
materialDesign:HintAssist.Hint="Name">
7272
<TextBox.Text>
7373
<Binding Path="Name" UpdateSourceTrigger="PropertyChanged">
7474
<Binding.ValidationRules>
@@ -78,7 +78,7 @@
7878
</TextBox.Text>
7979
</TextBox>
8080
<TextBlock Grid.Row="1" Grid.Column="2" VerticalAlignment="Center" Margin="16 0 8 0">OS</TextBlock>
81-
<ComboBox Grid.Row="1" Grid.Column="3" materialDesign:TextFieldAssist.Hint="OS">
81+
<ComboBox Grid.Row="1" Grid.Column="3" materialDesign:HintAssist.Hint="OS">
8282
<ComboBoxItem>Andoid</ComboBoxItem>
8383
<ComboBoxItem>iOS</ComboBoxItem>
8484
<ComboBoxItem>Linux</ComboBoxItem>
@@ -89,16 +89,16 @@
8989
MinWidth="280"
9090
AcceptsReturn="True"
9191
VerticalScrollBarVisibility="Auto"
92-
materialDesign:TextFieldAssist.Hint="Multiline text"
92+
materialDesign:HintAssist.Hint="Multiline text"
9393
Height="80">Multiline. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. The quick brown fox jumps over the lazy dog. War and peace. Keep going. Go on. For how long? Not long. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</TextBox>
9494
<materialDesign:PackIcon Grid.Row="2" Grid.Column="0" Kind="Phone" Foreground="{Binding ElementName=PhoneTextBox, Path=BorderBrush}" />
9595
<TextBox Grid.Row="2" Grid.Column="1"
9696
x:Name="PhoneTextBox"
9797
materialDesign:TransitionAssist.DisableTransitions="True"
9898
/>
9999
<TextBlock Grid.Row="2" Grid.Column="2" VerticalAlignment="Center" Margin="16 0 8 0">Fruit</TextBlock>
100-
<ComboBox Grid.Row="2" Grid.Column="3" materialDesign:TextFieldAssist.Hint="Search"
101-
IsEditable="True" materialDesign:TextFieldAssist.HintOpacity=".26">
100+
<ComboBox Grid.Row="2" Grid.Column="3" materialDesign:HintAssist.Hint="Search"
101+
IsEditable="True" materialDesign:HintAssist.HintOpacity=".26">
102102
<ComboBoxItem>Apple</ComboBoxItem>
103103
<ComboBoxItem>Banana</ComboBoxItem>
104104
<ComboBoxItem>Pear</ComboBoxItem>
@@ -107,17 +107,17 @@
107107
<materialDesign:PackIcon Grid.Row="3" Grid.Column="0" Kind="Comment" Foreground="{Binding ElementName=CommentTextBox, Path=BorderBrush}" />
108108
<TextBox Grid.Row="3" Grid.Column="1"
109109
x:Name="CommentTextBox"
110-
materialDesign:TextFieldAssist.Hint="Comment"
110+
materialDesign:HintAssist.Hint="Comment"
111111
/>
112112
<materialDesign:PackIcon Grid.Row="3" Grid.Column="2" Kind="Key" Foreground="{Binding ElementName=PasswordBox, Path=BorderBrush}" HorizontalAlignment="Right" />
113113
<PasswordBox Grid.Row="3" Grid.Column="3"
114114
x:Name="PasswordBox"
115-
materialDesign:TextFieldAssist.Hint="Password" />
116-
<TextBox Grid.Row="4" Grid.Column="1" materialDesign:TextFieldAssist.Hint="Floating Hint"
115+
materialDesign:HintAssist.Hint="Password" />
116+
<TextBox Grid.Row="4" Grid.Column="1" materialDesign:HintAssist.Hint="Floating Hint"
117117
Style="{StaticResource MaterialDesignFloatingHintTextBox}"
118-
Margin="0 8 0 8"/>
119-
<ComboBox Grid.Row="4" Grid.Column="3" materialDesign:TextFieldAssist.Hint="OS" Style="{StaticResource MaterialDesignFloatingHintComboBox}"
120-
Margin="0 8 0 8">
118+
Margin="0 16 0 8"/>
119+
<ComboBox Grid.Row="4" Grid.Column="3" materialDesign:HintAssist.Hint="OS" Style="{StaticResource MaterialDesignFloatingHintComboBox}"
120+
Margin="0 16 0 8">
121121
<ComboBoxItem>Andoid</ComboBoxItem>
122122
<ComboBoxItem>iOS</ComboBoxItem>
123123
<ComboBoxItem>Linux</ComboBoxItem>
@@ -126,8 +126,8 @@
126126

127127
<StackPanel Grid.Row="3" Grid.Column="4" Grid.RowSpan="3" Margin="32 16 0 0">
128128
<TextBlock Style="{StaticResource MaterialDesignHeadlineTextBlock}">Virtualised Comboboxes</TextBlock>
129-
<StackPanel Orientation="Horizontal" Margin="0 2 0 0">
130-
<ComboBox materialDesign:TextFieldAssist.Hint="Virtualisation"
129+
<StackPanel Orientation="Horizontal" Margin="0 12 0 0">
130+
<ComboBox materialDesign:HintAssist.Hint="Virtualisation"
131131
MinWidth="72"
132132
Margin="0 0 0 0"
133133
VerticalAlignment="Bottom"
@@ -139,7 +139,7 @@
139139
</ItemsPanelTemplate>
140140
</ComboBox.ItemsPanel>
141141
</ComboBox>
142-
<ComboBox materialDesign:TextFieldAssist.Hint="(editable)"
142+
<ComboBox materialDesign:HintAssist.Hint="(editable)"
143143
MinWidth="72"
144144
Margin="16 0 0 0"
145145
VerticalAlignment="Bottom"
@@ -151,7 +151,7 @@
151151
</ItemsPanelTemplate>
152152
</ComboBox.ItemsPanel>
153153
</ComboBox>
154-
<ComboBox materialDesign:TextFieldAssist.Hint="(float hint)"
154+
<ComboBox materialDesign:HintAssist.Hint="(float hint)"
155155
MinWidth="72"
156156
Margin="16 0 0 0"
157157
ItemsSource="{Binding LongListToTestComboVirtualization}"
@@ -165,33 +165,44 @@
165165
</StackPanel>
166166
</StackPanel>
167167

168-
<TextBox Grid.Row="5" Grid.Column="1" materialDesign:TextFieldAssist.Hint="Floating Hint" Style="{StaticResource MaterialDesignFloatingHintTextBox}" Text="Good stuff"
169-
Margin="0 8 0 8"/>
170-
<ComboBox Grid.Row="5" Grid.Column="3" materialDesign:TextFieldAssist.Hint="Search" IsEditable="True" Style="{StaticResource MaterialDesignFloatingHintComboBox}"
168+
<TextBox Grid.Row="5" Grid.Column="1" Style="{StaticResource MaterialDesignFloatingHintTextBox}" Text="Good stuff"
169+
Margin="0 8 0 8">
170+
<materialDesign:HintAssist.Hint>
171+
<StackPanel Orientation="Horizontal" Margin="-2 0 0 0">
172+
<materialDesign:PackIcon Kind="AccessPoint" />
173+
<TextBlock>WiFi</TextBlock>
174+
</StackPanel>
175+
</materialDesign:HintAssist.Hint>
176+
</TextBox>
177+
<ComboBox Grid.Row="5" Grid.Column="3" materialDesign:HintAssist.Hint="Search" IsEditable="True" Style="{StaticResource MaterialDesignFloatingHintComboBox}"
171178
Margin="0 8 0 8">
172179
<ComboBoxItem IsSelected="True">Apple</ComboBoxItem>
173180
<ComboBoxItem>Banana</ComboBoxItem>
174181
<ComboBoxItem>Pear</ComboBoxItem>
175182
<ComboBoxItem>Orange</ComboBoxItem>
176183
</ComboBox>
177184

178-
<materialDesign:PackIcon Grid.Row="6" Grid.Column="0" Kind="Key" Foreground="{Binding ElementName=FloatingPasswordBox, Path=BorderBrush}" />
185+
<materialDesign:PackIcon Grid.Row="6" Grid.Column="0" Kind="Key"
186+
Margin="0 12 0 0"
187+
Foreground="{Binding ElementName=FloatingPasswordBox, Path=BorderBrush}" />
179188
<PasswordBox Grid.Row="6" Grid.Column="1"
180-
x:Name="FloatingPasswordBox"
181-
materialDesign:TextFieldAssist.Hint="Floating Password" Style="{StaticResource MaterialDesignFloatingHintPasswordBox}" />
189+
x:Name="FloatingPasswordBox"
190+
Margin="0 12 0 0"
191+
materialDesign:HintAssist.Hint="Floating Password"
192+
Style="{StaticResource MaterialDesignFloatingHintPasswordBox}" />
182193

183194
<TextBlock Grid.Row="7" Grid.Column="1" Style="{StaticResource MaterialDesignSubheadingTextBlock}"
184195
Margin="0 48 0 0">DataTemplate Test</TextBlock>
185196
<ContentControl Grid.Row="8" Grid.Column="1" Grid.ColumnSpan="4"
186197
Content="{Binding DemoItem}"
187-
Margin="0 4 0 0">
198+
Margin="0 12 0 0">
188199
<ContentControl.ContentTemplate>
189200
<DataTemplate DataType="domain:DemoItem">
190201
<StackPanel Orientation="Horizontal">
191-
<TextBox materialDesign:TextFieldAssist.Hint="Name" Text="{Binding Name}" Margin="0 0 0 0" VerticalAlignment="Bottom" />
192-
<TextBox materialDesign:TextFieldAssist.Hint="Content" Text="{Binding Content}" Margin="8 0 0 0" VerticalAlignment="Bottom" />
193-
<TextBox Style="{StaticResource MaterialDesignFloatingHintTextBox}" materialDesign:TextFieldAssist.Hint="Name" Text="{Binding Name}" Margin="8 0 0 0" VerticalAlignment="Bottom" />
194-
<TextBox Style="{StaticResource MaterialDesignFloatingHintTextBox}" materialDesign:TextFieldAssist.Hint="Content" Text="{Binding Content}" Margin="8 0 0 0" VerticalAlignment="Bottom" />
202+
<TextBox materialDesign:HintAssist.Hint="Name" Text="{Binding Name}" Margin="0 0 0 0" VerticalAlignment="Bottom" />
203+
<TextBox materialDesign:HintAssist.Hint="Content" Text="{Binding Content}" Margin="8 0 0 0" VerticalAlignment="Bottom" />
204+
<TextBox Style="{StaticResource MaterialDesignFloatingHintTextBox}" materialDesign:HintAssist.Hint="Name" Text="{Binding Name}" Margin="8 0 0 0" VerticalAlignment="Bottom" />
205+
<TextBox Style="{StaticResource MaterialDesignFloatingHintTextBox}" materialDesign:HintAssist.Hint="Content" Text="{Binding Content}" Margin="8 0 0 0" VerticalAlignment="Bottom" />
195206
</StackPanel>
196207
</DataTemplate>
197208
</ContentControl.ContentTemplate>
@@ -200,16 +211,16 @@
200211
Margin="0 16 0 0">DataTemplateSelector Test</TextBlock>
201212
<ContentControl Grid.Row="10" Grid.Column="1" Grid.ColumnSpan="4"
202213
Content="{Binding DemoItem}"
203-
Margin="0 4 0 0">
214+
Margin="0 12 0 0">
204215
<ContentControl.ContentTemplateSelector>
205216
<domain1:SimpleDataTemplateSelector>
206217
<domain1:SimpleDataTemplateSelector.FixedTemplate>
207218
<DataTemplate DataType="domain:DemoItem">
208219
<StackPanel Orientation="Horizontal">
209-
<TextBox Style="{StaticResource MaterialDesignFloatingHintTextBox}" materialDesign:TextFieldAssist.Hint="Name" Text="{Binding Name}" Margin="0 0 0 0" VerticalAlignment="Bottom" />
210-
<TextBox Style="{StaticResource MaterialDesignFloatingHintTextBox}" materialDesign:TextFieldAssist.Hint="Content" Text="{Binding Content}" Margin="8 0 0 0" VerticalAlignment="Bottom" />
211-
<TextBox materialDesign:TextFieldAssist.Hint="Name" Text="{Binding Name}" Margin="8 0 0 0" VerticalAlignment="Bottom" />
212-
<TextBox materialDesign:TextFieldAssist.Hint="Content" Text="{Binding Content}" Margin="8 0 0 0" VerticalAlignment="Bottom" />
220+
<TextBox Style="{StaticResource MaterialDesignFloatingHintTextBox}" materialDesign:HintAssist.Hint="Name" Text="{Binding Name}" Margin="0 0 0 0" VerticalAlignment="Bottom" />
221+
<TextBox Style="{StaticResource MaterialDesignFloatingHintTextBox}" materialDesign:HintAssist.Hint="Content" Text="{Binding Content}" Margin="8 0 0 0" VerticalAlignment="Bottom" />
222+
<TextBox materialDesign:HintAssist.Hint="Name" Text="{Binding Name}" Margin="8 0 0 0" VerticalAlignment="Bottom" />
223+
<TextBox materialDesign:HintAssist.Hint="Content" Text="{Binding Content}" Margin="8 0 0 0" VerticalAlignment="Bottom" />
213224
</StackPanel>
214225
</DataTemplate>
215226
</domain1:SimpleDataTemplateSelector.FixedTemplate>
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
using System;
2+
using System.Collections.Generic;
3+
using System.Globalization;
4+
using System.Linq;
5+
using System.Text;
6+
using System.Threading.Tasks;
7+
using System.Windows;
8+
using System.Windows.Data;
9+
10+
namespace MaterialDesignThemes.Wpf.Converters
11+
{
12+
public class BooleanToVisibilityConverter : IValueConverter
13+
{
14+
public Visibility TrueValue { get; set; } = Visibility.Visible;
15+
public Visibility FalseValue { get; set; } = Visibility.Collapsed;
16+
17+
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
18+
{
19+
bool bValue = false;
20+
if (value is bool)
21+
{
22+
bValue = (bool)value;
23+
}
24+
25+
return (bValue) ? TrueValue : FalseValue;
26+
}
27+
28+
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
29+
{
30+
return value as Visibility? == TrueValue;
31+
}
32+
}
33+
}
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
using System;
2+
using System.Collections.Generic;
3+
using System.Globalization;
4+
using System.Linq;
5+
using System.Text;
6+
using System.Threading.Tasks;
7+
using System.Windows;
8+
using System.Windows.Controls;
9+
using System.Windows.Controls.Primitives;
10+
using System.Windows.Data;
11+
12+
namespace MaterialDesignThemes.Wpf.Converters
13+
{
14+
/// <summary>
15+
/// Converter for <see cref="SmartHint"/> control. Can be extended by <see cref="HintProxyFabric.RegisterBuilder(Func{Control, bool}, Func{Control, IHintProxy})"/> method.
16+
/// </summary>
17+
public class HintProxyFabricConverter : IValueConverter
18+
{
19+
private static readonly Lazy<HintProxyFabricConverter> _instance = new Lazy<HintProxyFabricConverter>();
20+
21+
public static HintProxyFabricConverter Instance => _instance.Value;
22+
23+
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
24+
{
25+
return HintProxyFabric.Get(value as Control);
26+
}
27+
28+
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
29+
{
30+
return Binding.DoNothing;
31+
}
32+
}
33+
}

0 commit comments

Comments
 (0)