怎样将DataGrid的列值统计并显示在页脚

  大家都知道DataGird是一个功能强大的数据绑定控件,使用起来比较顺手,有利必有弊。相信大家也都清楚它的利害关系,在这里就不多罗索了,直接进入主题吧。
  首先需要允许DG的页脚显示。(用于显示统计列值)
  第二,将要统计的列设为模板列,编辑模板列里的项模板,将项模板里的label控件命名为:lblQuantity
   
  第三,在DG的ItemDataBound 事件里写如下代码:
   
    if(e.Item.ItemIndex >= 0)
   {
    //取指定列的数据总和    
    Label lblQuantity = (Label)e.Item.Cells[5].FindControl("lblQuantity");  //比如第六列为数量

    intSum += int.Parse(lblQuantity.Text.ToString());
   }
   else if(e.Item.ItemType == ListItemType.Footer)
   {
    e.Item.Cells[2].Text = "<font color='red'>总计:</font>";   //第三列显示总计
    e.Item.Cells[5].Text = "<font color='red'>"+intSum.ToString()+"</font>"; //第六列显示统计的数量,可根据自己的要求做相应调整。
   }

注:intSum是全局变量,此测试代码在VS2003下运行正常。

posted @ 2006-07-14 10:12  Ricebug  阅读(1139)  评论(6编辑  收藏  举报