windows 显示datagridview中最后一列单元格值的总和

jv2fixgn  于 2022-11-18  发布在  Windows
关注(0)|答案(2)|浏览(105)

如何在datagridview中显示最后一列的单元格的值的总和。我有一个有2列名称和值的网格。我希望网格有一个文本框,在最后一行有值的总和。

wkyowqbh

wkyowqbh1#

var value = dataGridView1.Rows.Cast<DataGridViewRow>().Sum(x =>
                                                                {
                                                                  double val = 0;
                                                                  if (double.TryParse(x.Cells["Column"], out val))
                                                                    return val;
                                                                  else
                                                                    return 0;
                                                                });

使用LINQ应该可以做到这一点。

wgx48brx

wgx48brx2#

假设最后一列中有整数值,则可以使用以下代码:EDIT:检查当前行是否为新行(插入行)

int sum = 0;
        for (int i = 0; i < dataGridView1.Rows.Count; i++)
        {
            int num = 0;
            if(!dataGridView1.Rows[i].IsNewRow)
                if (int.TryParse(dataGridView1.Rows[i].Cells[dataGridView1.Columns.Count - 1].Value.ToString(), out num))
                    sum += num;
        }
        dataGridView1.Rows.Add(new object[] { "Total", sum.ToString()});

如果您有其他类型的数字,则应分析该数字。****EDIT:****如注解中所述,您有一个数据绑定的DataGridView控件。在这种情况下,应将数据添加到绑定的源。如果是DataTable,则应添加到它,而不是添加到DataGridView

DataTable dt = (DataTable)dataGridView1.DataSource;
dt.Rows.Add(new object[] { "Total" , sum.ToString() });

相关问题