木-叶 发表于 2013-1-3 15:35:39

在ListView的GroupItem头中显示每列的Summary

在ListView的GroupItem头中显示每列的Summary

<div class="postText"><div id="cnblogs_post_body">问题描述

   WPF自带的ListView和DataGrid控,都提供了数据分组的支持,并可以对分组的Header进行自定义。但是,如果想在每个分组的Header中,显示出本分组的"小计"就不是一件容易的事情了。
   假设要用一个ListView用于显示全校学生成绩。按班级分组,并在分组头中显示班级平均分。
   最终效果大致如下:
http://images.cnblogs.com/cnblogs_com/nankezhishi/201209/201209042300041488.png














    图1. 在分组的Header中显示本分组的Aggregation

    怎么样?有什么思路?实现的难点有:

[*]Group Header中的第一例显示为分组的名称。
[*]Group Header中的其它列与数据一致。
[*]Group Header中各列的宽度与ListView中列对应始终一致。
[*]Group Header 中各列的对齐方式与ListView中各列一致。
数据

    Model层只有一个类,ScoreInfo,代码如下:

<div class="cnblogs_code">public class ScoreInfo
{
    public ScoreInfo(string studentNo, string className, int math, int english)
    {
      StudentNo = studentNo;
      ClassName = className;
      MathScore = math;
      EnglishScore = english;
    }

    public string StudentNo { get; set; }

    public string ClassName { get; set; }

    public int MathScore { get; set; }

    public int EnglishScore { get; set; }

    true)]
    public int TotalScore
    {
      get { return MathScore + EnglishScore; }
    }
}
页: [1]
查看完整版本: 在ListView的GroupItem头中显示每列的Summary