网格视图摘要
本文关键字:视图 网格 | 更新日期: 2023-09-27 18:04:55
我需要gridview摘要页脚…
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
decimal totalPrice = 0M;
int totalItems = 0;
if (e.Row.RowType == DataControlRowType.DataRow)
{
Label lblPrice = (Label)e.Row.FindControl("lblPrice");
decimal price = Decimal.Parse(lblPrice.Text);
totalPrice += price;
totalItems += 1;
}
if (e.Row.RowType == DataControlRowType.Footer)
{
Label lblTotalPrice = (Label)e.Row.FindControl("lblTotalPrice");
lblTotalPrice.Text = totalPrice.ToString();
}
}
但是它不起作用。什么好主意吗?
像这样将totalPrice和totalItems声明为全局变量
decimal totalPrice = 0M;
int totalItems = 0;
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
...
}
在方法范围内声明totalPrice
,因此它将从每一行开始。当涉及到页脚行时,它将再次为零。至少有两个选项:
- 在SQL语句中包含
total = sum(price)
列并绑定 - 将
totalPrice
从您的方法移动到页面的私有字段。在在这种情况下,你的代码应该工作