2016-12-30 34 views
1

我想在我的DataGridView年底总结列的末尾总结列:如下所示如何在datagridview的

enter image description here

 column1 | column2 |column3| column3 | 
     --------+----------+-------+------------| 
     1  | 2  | 3 |  4  | 
    ---------+----------+-------+------------| 
     2  | 4  |  7 |  9  | 
--------------+----------+-------+------------| 
total 3  6   10   13 
----------------------------------------------- 
+0

你介意分享您的最新的代码? –

+4

你有4个问题的历史。没有评论,没有被接受的答案。显示一些方面的问题的答案 – Badiparmagi

+0

我不是说最后的代码 –

回答

0

可以在GridView控件的页脚中添加总:

decimal total = dt.AsEnumerable().Sum(row => row.Field<decimal>("Amount")); 
        GridView1.FooterRow.Cells[1].Text = "Total"; 
        GridView1.FooterRow.Cells[1].HorizontalAlign = HorizontalAlign.Right; 
        GridView1.FooterRow.Cells[2].Text = total.ToString("N2"); 
+0

感谢>>>>> Rai Vu –

0

您可以使用DataBound事件,它的射击毕竟行是databound,Amount总和我添加到标签。标签可在脚注中添加Total

protected void GridDataBound(object sender, EventArgs e) 
{ 
    GridView gridView = (GridView)sender; 
    DataTable dt= (DataTable)gridView .DataSource; 
    decimal sum= dt.AsEnumerable().Sum(r => r.Field<decimal>("Amount")); 
    totalLabel.Text = sum.ToString(); 
} 

或添加和作为最后一行

protected void GridDataBound(object sender, EventArgs e) 
{ 
GridView gridView = (GridView)sender; 
DataTable dt = (DataTable)gridView.DataSource; 
decimal sum = dt.AsEnumerable().Sum(r => r.Field<decimal>("Amount")); 
var newRow = dt.NewRow(); 
newRow["Name"] = "Total"; 
newRow["Amount"] = sum.ToString(); 
dt.Rows.Add(newRow); 
} 
+0

感谢M.Wiśnicki –

相关问题