首页 > 解决方案 > 我得到了这个异常:System.FormatException:'输入字符串的格式不正确。'

问题描述

我想制作一个附加了 SQL 数据库的管理程序。我的问题是我想将一列中的所有值收集到一个文本框中。datagridview 中的那一列 [7] 的值基于同一 datagridview 中其他 2 列 [4] 和 [5] 的计算,形成为金钱。

我试图将其转换为字符串或整数,但没有成功。请帮忙!

    public void gridTotal()
    {
        double sum = 0;
        for (int i = 0; i < dataGridView1.Rows.Count; ++i)
        {
            sum += Convert.ToDouble(dataGridView1.Rows[i].Cells[7].Value);
        }
        facturaTotal.Text = sum.ToString("C");
    }

标签: c#

解决方案


dataGridView1.Rows[i].Cells[7].Value

可能是null或为空String或其他,无法转换为双精度。相反,我会推荐

double val = 0;
if (double.TryParse(dataGridView1.Rows[i].Cells[7].Value, out val)) sum += val;

推荐阅读