|
1 |
| -<UserControl x:Class="MaterialDesignColors.WpfExample.Grids" |
| 1 | +<UserControl x:Class="MaterialDesignColors.WpfExample.DataGrids" |
2 | 2 | xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
3 | 3 | xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
4 | 4 | xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
|
7 | 7 | xmlns:smtx="clr-namespace:ShowMeTheXAML;assembly=ShowMeTheXAML"
|
8 | 8 | xmlns:domain="clr-namespace:MaterialDesignDemo.Domain"
|
9 | 9 | mc:Ignorable="d"
|
10 |
| - d:DesignHeight="300" d:DesignWidth="600"> |
| 10 | + d:DesignHeight="300" d:DesignWidth="600" d:DataContext="{d:DesignInstance domain:ListsAndGridsViewModel}"> |
11 | 11 | <UserControl.Resources>
|
12 | 12 | <ResourceDictionary>
|
13 | 13 | <ResourceDictionary.MergedDictionaries>
|
|
16 | 16 | </ResourceDictionary>
|
17 | 17 | </UserControl.Resources>
|
18 | 18 | <ScrollViewer>
|
19 |
| - <StackPanel> |
20 |
| - <TextBlock>Custom Columns</TextBlock> |
| 19 | + <StackPanel Margin="5 0 0 0"> |
| 20 | + <TextBlock Style="{StaticResource MaterialDesignHeadline5TextBlock}" Text="Custom Columns"/> |
21 | 21 | <smtx:XamlDisplay Key="grids_1">
|
22 |
| - <DataGrid Margin="0 8 0 0" ItemsSource="{Binding Items3}" CanUserSortColumns="True" CanUserAddRows="False" AutoGenerateColumns="False" |
23 |
| - materialDesign:DataGridAssist.CellPadding="13 8 8 8" materialDesign:DataGridAssist.ColumnHeaderPadding="8" HeadersVisibility="All"> |
| 22 | + <DataGrid ItemsSource="{Binding Items1}" CanUserSortColumns="True" CanUserAddRows="False" AutoGenerateColumns="False" |
| 23 | + HeadersVisibility="All"> |
24 | 24 | <DataGrid.Resources>
|
25 | 25 | <domain:BindingProxy x:Key="DataContextProxy" Data="{Binding}" />
|
26 | 26 | </DataGrid.Resources>
|
|
32 | 32 | <!--padding to allow hit test to pass thru for sorting -->
|
33 | 33 | <Border Background="Transparent" Padding="6 0 6 0" HorizontalAlignment="Center">
|
34 | 34 | <CheckBox HorizontalAlignment="Center"
|
35 |
| - IsChecked="{Binding Data.IsAllItems3Selected, Source={StaticResource DataContextProxy}}" /> |
| 35 | + IsChecked="{Binding Data.IsAllItems1Selected, Source={StaticResource DataContextProxy}}" /> |
36 | 36 | </Border>
|
37 | 37 | </DataGridCheckBoxColumn.Header>
|
38 | 38 | </DataGridCheckBoxColumn>
|
39 | 39 | <DataGridTextColumn Binding="{Binding Code}"
|
40 |
| - Header="Code" |
41 |
| - EditingElementStyle="{StaticResource MaterialDesignDataGridTextColumnEditingStyle}" /> |
| 40 | + Header="Code" |
| 41 | + ElementStyle="{StaticResource MaterialDesignDataGridTextColumnStyle}" |
| 42 | + EditingElementStyle="{StaticResource MaterialDesignDataGridTextColumnEditingStyle}" /> |
42 | 43 | <!-- if you want to use the pop up style (MaterialDesignDataGridTextColumnPopupEditingStyle), you must use MaterialDataGridTextColumn -->
|
43 |
| - <materialDesign:DataGridTextColumn Binding="{Binding Name}" |
44 |
| - Header="Name" |
45 |
| - EditingElementStyle="{StaticResource MaterialDesignDataGridTextColumnPopupEditingStyle}" |
46 |
| - /> |
| 44 | + <materialDesign:DataGridTextColumn Header="Name" |
| 45 | + ElementStyle="{StaticResource MaterialDesignDataGridTextColumnStyle}" |
| 46 | + EditingElementStyle="{StaticResource MaterialDesignDataGridTextColumnPopupEditingStyle}"> |
| 47 | + <materialDesign:DataGridTextColumn.Binding> |
| 48 | + <Binding Path="Name"> |
| 49 | + <Binding.ValidationRules> |
| 50 | + <domain:NotEmptyValidationRule /> |
| 51 | + </Binding.ValidationRules> |
| 52 | + </Binding> |
| 53 | + </materialDesign:DataGridTextColumn.Binding> |
| 54 | + </materialDesign:DataGridTextColumn> |
47 | 55 | <!-- set a max length to get an indicator in the editor -->
|
48 |
| - <materialDesign:DataGridTextColumn Binding="{Binding Description}" |
49 |
| - Header="Description" |
50 |
| - MaxLength="255" |
51 |
| - EditingElementStyle="{StaticResource MaterialDesignDataGridTextColumnPopupEditingStyle}" /> |
| 56 | + <DataGridTextColumn Header="Description" |
| 57 | + ElementStyle="{StaticResource MaterialDesignDataGridTextColumnStyle}" |
| 58 | + EditingElementStyle="{StaticResource MaterialDesignDataGridTextColumnEditingStyle}"> |
| 59 | + <DataGridTextColumn.Binding> |
| 60 | + <Binding Path="Description"> |
| 61 | + <Binding.ValidationRules> |
| 62 | + <domain:NotEmptyValidationRule /> |
| 63 | + </Binding.ValidationRules> |
| 64 | + </Binding> |
| 65 | + </DataGridTextColumn.Binding> |
| 66 | + </DataGridTextColumn> |
52 | 67 | <materialDesign:DataGridTextColumn Binding="{Binding Numeric}"
|
53 | 68 | Header="Number with long header"
|
54 | 69 | Width="120"
|
|
66 | 81 | </Style>
|
67 | 82 | </DataGridTextColumn.HeaderStyle>
|
68 | 83 | <DataGridTextColumn.ElementStyle>
|
69 |
| - <Style TargetType="{x:Type TextBlock}"> |
| 84 | + <Style TargetType="{x:Type TextBlock}" BasedOn="{StaticResource MaterialDesignDataGridTextColumnStyle}"> |
70 | 85 | <Setter Property="HorizontalAlignment" Value="Right" />
|
71 | 86 | </Style>
|
72 | 87 | </DataGridTextColumn.ElementStyle>
|
|
87 | 102 | </DataGrid.Columns>
|
88 | 103 | </DataGrid>
|
89 | 104 | </smtx:XamlDisplay>
|
90 |
| - <TextBlock Margin="0 24 0 0">Auto Generated Columns</TextBlock> |
| 105 | + <TextBlock Style="{StaticResource MaterialDesignHeadline5TextBlock}" Text="Auto Generated Columns" Margin="0 24 0 0"/> |
91 | 106 | <smtx:XamlDisplay Key="grids_2">
|
92 |
| - <DataGrid Margin="0 8 0 0" ItemsSource="{Binding Items3}" CanUserSortColumns="True" CanUserAddRows="False" /> |
| 107 | + <DataGrid ItemsSource="{Binding Items2}" CanUserSortColumns="True" CanUserAddRows="False" /> |
93 | 108 | </smtx:XamlDisplay>
|
94 |
| - <TextBlock Margin="0 24 0 0">Custom Padding</TextBlock> |
| 109 | + <TextBlock Style="{StaticResource MaterialDesignHeadline6TextBlock}" Text="Custom Padding" Margin="0 24 0 0"/> |
95 | 110 | <smtx:XamlDisplay Key="grids_3">
|
96 |
| - <DataGrid Margin="0 8 0 0" ItemsSource="{Binding Items3}" CanUserSortColumns="True" CanUserAddRows="False" |
97 |
| - materialDesign:DataGridAssist.CellPadding="4 2 2 2" materialDesign:DataGridAssist.ColumnHeaderPadding="4 2 2 2" |
98 |
| - /> |
| 111 | + <DataGrid ItemsSource="{Binding Items3}" CanUserSortColumns="True" CanUserAddRows="False" |
| 112 | + materialDesign:DataGridAssist.CellPadding="4 2 2 2" materialDesign:DataGridAssist.ColumnHeaderPadding="4 2 2 2" /> |
99 | 113 | </smtx:XamlDisplay>
|
100 | 114 | </StackPanel>
|
101 | 115 | </ScrollViewer>
|
|
0 commit comments