首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

C#中处置datagridview中显示的数据

2013-09-05 
C#中处理datagridview中显示的数据我用如下代码计算datagridview中查询到的数据某列的和,运行老是报错:输

C#中处理datagridview中显示的数据
我用如下代码计算datagridview中查询到的数据某列的和,运行老是报错:输入字符串的格式不正确。
我不知道错在哪了?请大侠们帮忙看看
float jz = 0,sz=0;
            for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
            {
                
               jz += float.Parse(dataGridView1.Rows[i].Cells[12].Value.ToString());
              
                sz += float.Parse(dataGridView1.Rows[i].Cells[14].Value.ToString());
                
            } c# datagridview
[解决办法]
加上
MessageBox.Show(dataGridView1.Rows[i].Cells[12].Value.ToString());
MessageBox.Show(dataGridView1.Rows[i].Cells[14].Value.ToString());

输出什么,是否是合法的数字,前后是否有空格?
[解决办法]
很有可能dataGridView1.Rows[i].Cells[12].Value.ToString()的结果就不是“123.45”这样的结果,有可能就是一个null或者是""或者是"kkk"。转换的时候就报输入字符串的格式不正确的错误。
[解决办法]
 float num=0;
 float num1=0;

for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
             {
                float.TryParse(dataGridView1.Rows[i].Cells[12].Value.ToString(),out num);
                jz += num
                float.TryParse(dataGridView1.Rows[i].Cells[14].Value.ToString(),out num1);
                 sz +=num1


                 
             } 
[解决办法]

引用:
Quote: 引用:

很有可能dataGridView1.Rows[i].Cells[12].Value.ToString()的结果就不是“123.45”这样的结果,有可能就是一个null或者是""或者是"kkk"。转换的时候就报输入字符串的格式不正确的错误。
是有几个是NULL值,可不可以排除这个别null值,我加了判断:if(dataGridView1.Rows[i].Cells[12].Value!=null),然后执行操作,还是报这个错

整个代码是对的,你再看看,是否还有为""的情况。

热点排行