网格视图中的标题文本已更改为零

本文关键字:文本 视图 标题 网格 | 更新日期: 2023-09-27 18:27:21

我使用以下代码在网格视图中获得DataField="Quantity"的总和,并在网格视图页脚中显示结果

问题是HeaderText="Quantity"变为零

protected void griddelverynote_RowDataBound(object sender, GridViewRowEventArgs e)
{
     int TotalQuantity = 0;
     if (e.Row.RowType == DataControlRowType.DataRow)
     TotalQuantity += Convert.ToInt32(DataBinder.Eval(e.Row.DataItem, "Quantity"));
     else if (e.Row.RowType == DataControlRowType.Footer)
     e.Row.Cells[1].Text = "Total Quantity";
     e.Row.Cells[2].Text = TotalQuantity.ToString();
}

网格视图中的标题文本已更改为零

代码中的问题是,绑定每一行时都会触发RowDataBound事件。因此,对于每一行,TotalQuantity被重新初始化为0。在以下外部声明变量TotalQuantity:-

int TotalQuantity = 0;
protected void griddelverynote_RowDataBound(object sender, GridViewRowEventArgs e)
{
     if (e.Row.RowType == DataControlRowType.DataRow)
          TotalQuantity += Convert.ToInt32(DataBinder.Eval(e.Row.DataItem, "Quantity"));
     else if (e.Row.RowType == DataControlRowType.Footer)
     {
          e.Row.Cells[1].Text = "Total Quantity";
          e.Row.Cells[2].Text = TotalQuantity.ToString();
     }
}