gridview列的总和值,并在网页asp.net上显示

时间:2013-11-27 20:00:39

标签: c# asp.net gridview

我目前有:

<asp:GridView ID="BalanceCheckDataGridView" runat="server"  AutoGenerateColumns="false">
  <Columns>
         <asp:BoundField ItemStyle-Width="30%" DataField="Company" HeaderText="Company" />
         <asp:BoundField ItemStyle-Width="30%" DataField="Balance" HeaderText="Balance" />
   </Columns>
</asp:GridView>

现在我想从天平中获取信息,并将它们相加,然后显示它(最后可以是“Total:sumValue”这样的行,或者它的文本可以是它的总和值的标签)

我是新手,你能帮忙吗。

非常感谢。

3 个答案:

答案 0 :(得分:4)

Int32 tot = 0; 
protected void Dg_Source_RowDataBound(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
        tot = tot + Convert.ToInt32(e.Row.Cells[1].Text);
        lblSum.Text = tot.ToString();
    }
}

答案 1 :(得分:2)

在网格上放置一个页脚,然后在绑定网格后,您可以在代码中执行类似的操作。

((Label)your_grid.FooterRow.Cells[1].FindControl("your_label_to_diplay_total")).Text = "Total:" + ds.Tables[0].Compute("sum(your_balance_field)", "").ToString();

这是我的头脑。您必须根据您的应用程序进行自定义。

答案 2 :(得分:0)

    int sum=0;
    protected void GridView2_RowDataBound(object sender,  GridViewRowEventArgs e)
         {

        if (e.Row.RowType == DataControlRowType.DataRow)
        {
            Label salary = (Label)e.Row.FindControl("Label3");//take lable id
            sum +=int.Parse(salary.Text);
            lblsum.Text = sum.ToString();
        }
    }