dgvDataSet.Rows[j].Cells[str_CellsName].ValueType=typeof(double);
//MessageBox.Show(dgvDataSet.Rows[j].Cells[str_CellsName].ValueType.ToString());
dgvDataSet.Rows[j].Cells[str_CellsName].Value = str_value;str_value的值类型除了double其他的类型DataGridView都可以接收
例如:
str_value=100.21就报错:100.21不是Int32的有效值
str_value=100可以通过我改变单元格类型也没用,最终会转成Int32
怎么解决
//MessageBox.Show(dgvDataSet.Rows[j].Cells[str_CellsName].ValueType.ToString());
dgvDataSet.Rows[j].Cells[str_CellsName].Value = str_value;str_value的值类型除了double其他的类型DataGridView都可以接收
例如:
str_value=100.21就报错:100.21不是Int32的有效值
str_value=100可以通过我改变单元格类型也没用,最终会转成Int32
怎么解决
DataGridViewCell s = dgvDataSet.Rows[j].Cells[str_CellsName];
s.Value = "112.11";//这样编译不会有错,运行报错
s.Value = "¥112.11";//这样编译不会有错,运行报错
s.Value = "112_11";//这样编译不会有错,运行报错
s.Value = "100";//这样编译通过,运行也通过
改为
dgvDataSet.Rows[j].Cells[str_CellsName].ValueType=typeof(decimal);
看一下
错误信息还是一样