Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 汇总DataGridView中特定列的值_C#_Winforms - Fatal编程技术网

C# 汇总DataGridView中特定列的值

C# 汇总DataGridView中特定列的值,c#,winforms,C#,Winforms,我有一个4列的简单dataGridView。我想对第三列中的值求和,并在按下按钮时将结果保存到变量中。我试着这样做,但我总是会说 “指定的强制转换无效-从数字强制转换时,值必须小于无穷大” 另外,每个单元格基本上都是DataGridViewTextBoxColumn,这意味着我可以直接输入值 代码: 我错过了什么?试试看,而不是铸造 result += Convert.ToDouble(row.Cells[2].Value); 带错误检查 if (row.Cells[2].Value != n

我有一个4列的简单dataGridView。我想对第三列中的值求和,并在按下按钮时将结果保存到变量中。我试着这样做,但我总是会说

“指定的强制转换无效-从数字强制转换时,值必须小于无穷大”

另外,每个单元格基本上都是DataGridViewTextBoxColumn,这意味着我可以直接输入值

代码:


我错过了什么?

试试看,而不是铸造

result += Convert.ToDouble(row.Cells[2].Value);
带错误检查

if (row.Cells[2].Value != null)
{
    try
    {
        result += Convert.ToDouble(row.Cells[2].Value);
    }
    catch { }
}
private getColSum()
{
整数和=0;
对于(int i=0;i
如果由于
无效的强制转换规范
if (row.Cells[2].Value != null)
{
    try
    {
        result += Convert.ToDouble(row.Cells[2].Value);
    }
    catch { }
}
DataTable dt =DataGridView1.DataSource as DataTable;

decimal total;

total=(int)dt.Compute("sum(column_name)","");
private getColSum()
{
    int sum = 0;
    for (int i = 0; i < dataGridView1.Rows.Count; ++i)
    {
        sum += Convert.ToInt32(dataGridView1.Rows[i].Cells[2].Value);
    }
    return sum;
}