protected void DataGrid_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
int gzcs=0;
if (e.Item.ItemIndex >= 0)
dbArg += int.Parse(e.Item.Cells[3].Text);
else if (e.Item.ItemType == ListItemType.Footer)
{
e.Item.Cells[0].Text = "汇 总";
e.Item.Cells[3].Text = gzcs.ToString();
}

}

解决方案 »

  1.   

    对不起,发错拉,是这样的
                                int gzcs=0;
    if (e.Item.ItemIndex >= 0)
    gzcs += int.Parse(e.Item.Cells[3].Text);
    else if (e.Item.ItemType == ListItemType.Footer)
    {
    e.Item.Cells[0].Text = "汇 总";
    e.Item.Cells[3].Text = gzcs.ToString();
    }
      

  2.   

    e.Item.Cells[3].Text = gzcs.ToString();gzcs这个变量的值本身就是0,汇总的结果应该是在dbArg这个变量中吧?
      

  3.   

    把你的int gzcs=0;设为全局变量,放在DataGrid_ItemDataBound方法的外面,否则每次循环都成0了。
      

  4.   

    datagrid每绑定一条数据的时候都会触发这个时间,所以你的gzcs每次都是会初始化为0。
    你可以把gzcs定义为全局变量,放到的_ItemDataBound定义外面
      

  5.   

    你是不是想 
    e.Item.Cells[3].Text = dbArg.ToString();