DataGrid分组就不再介绍了,主要讲下如何把分组后的数据统计并显示出来,思路如下:
DataGrid分组产生的组类型为CollectionViewGroup,其Items属性即组内元素,自定义一个转换类GroupSum计算如求和等统计数据(这里就以求和为例),在GroupStyle中用转换一下即可;
下面是相关类的定义和xaml代码:
public class GroupSum : IValueConverter
{
#region 分组组内求和
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
var total = 0.0;
// DataGrid分组后对应的组及组内元素CollectionViewGroup.Items 类型是ReadOnlyObservableCollection<object>
if (value is ReadOnlyObservableCollection<object> items)
{
foreach (var item in items)
{
var de = item as XXXX(我自定义的类);
total += de.ZongJia;
}
}
return Math.Round(total, 2).ToString();
}
public object Convert