/
MainWindow.xaml
85 lines (85 loc) · 4.93 KB
/
MainWindow.xaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
<Window
x:Class="DXSample.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core"
xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid"
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
xmlns:local="clr-namespace:DXSample"
Title="MainWindow"
Height="350"
Width="525">
<Window.DataContext>
<local:ViewModel/>
</Window.DataContext>
<Grid>
<dxg:GridControl x:Name="grid" ItemsSource="{Binding Collection}" AutoExpandAllGroups="True" >
<dxg:GridControl.Resources>
<Style x:Key="SummaryStyle" TargetType="Run">
<Setter Property="FontWeight" Value="Bold"/>
<Style.Triggers>
<DataTrigger Binding="{Binding Path=Item.SummaryType}" Value="Min">
<Setter Property="Foreground" Value="Green"/>
</DataTrigger>
<DataTrigger Binding="{Binding Path=Item.SummaryType}" Value="Max">
<Setter Property="Foreground" Value="Red"/>
</DataTrigger>
<DataTrigger Binding="{Binding Path=Item.SummaryType}" Value="Sum">
<Setter Property="Foreground" Value="Blue"/>
</DataTrigger>
</Style.Triggers>
</Style>
</dxg:GridControl.Resources>
<dxg:GridControl.Columns>
<dxg:GridColumn Name="colCity" FieldName="City" MinWidth="120" GroupIndex="0" />
<dxg:GridColumn FieldName="UnitPrice" MinWidth="30">
<dxg:GridColumn.EditSettings>
<dxe:TextEditSettings Mask="c" MaskType="Numeric" MaskUseAsDisplayFormat="True"/>
</dxg:GridColumn.EditSettings>
</dxg:GridColumn>
<dxg:GridColumn FieldName="Quantity" MinWidth="30" />
<dxg:GridColumn FieldName="Discount" MinWidth="30">
<dxg:GridColumn.EditSettings>
<dxe:TextEditSettings Mask="0%" MaskType="Numeric" MaskUseAsDisplayFormat="True"/>
</dxg:GridColumn.EditSettings>
</dxg:GridColumn>
<dxg:GridColumn FieldName="Freight" MinWidth="30">
<dxg:GridColumn.EditSettings>
<dxe:TextEditSettings Mask="c" MaskType="Numeric" MaskUseAsDisplayFormat="True"/>
</dxg:GridColumn.EditSettings>
</dxg:GridColumn>
<dxg:GridColumn FieldName="Total" UnboundType="Decimal" MinWidth="30" UnboundExpression="([UnitPrice] * [Quantity]) * (1 - [Discount])">
<dxg:GridColumn.EditSettings>
<dxe:TextEditSettings Mask="c" MaskType="Numeric" MaskUseAsDisplayFormat="True" />
</dxg:GridColumn.EditSettings>
</dxg:GridColumn>
</dxg:GridControl.Columns>
<dxg:GridControl.GroupSummary>
<dxg:GridSummaryItem FieldName="Discount" SummaryType="Max" />
<dxg:GridSummaryItem FieldName="Discount" SummaryType="Average" ShowInGroupColumnFooter="Discount" />
<dxg:GridSummaryItem FieldName="Total" SummaryType="Count" ShowInGroupColumnFooter="Total" />
<dxg:GridSummaryItem FieldName="Total" SummaryType="Sum" ShowInGroupColumnFooter="Total" />
<dxg:GridSummaryItem FieldName="Quantity" SummaryType="Min"/>
<dxg:GridSummaryItem FieldName="Quantity" SummaryType="Max"/>
<dxg:GridSummaryItem FieldName="Freight" SummaryType="Sum"/>
<dxg:GridSummaryItem FieldName="UnitPrice" SummaryType="Average"/>
</dxg:GridControl.GroupSummary>
<dxg:GridControl.TotalSummary>
<dxg:GridSummaryItem FieldName="Total" SummaryType="Count" ShowInGroupColumnFooter="Total" />
<dxg:GridSummaryItem FieldName="Total" SummaryType="Sum" ShowInGroupColumnFooter="Total" />
</dxg:GridControl.TotalSummary>
<dxg:GridControl.View>
<dxg:TableView x:Name="view"
AutoWidth="True"
ShowGroupedColumns="True"
ShowGroupFooters="True"
ShowTotalSummary="True"
GroupSummaryDisplayMode="AlignByColumns"
GroupColumnFooterElementStyle="{StaticResource SummaryStyle}"
GroupColumnSummaryElementStyle="{StaticResource SummaryStyle}"
TotalSummaryElementStyle="{StaticResource SummaryStyle}">
</dxg:TableView>
</dxg:GridControl.View>
</dxg:GridControl>
</Grid>
</Window>