无法更改DataGridViewCell类型

时间:2017-03-28 02:14:03

标签: c# winforms datagridview

我正在尝试转换一个单元格(大多数单元格都填充了信息)但是当我从数据库中获取此列时它的NULL。 在datagridview它显示为什么都没有。这个单元格的类型是DateTime,但我想要做的是: 如果该单元格为NULL我想将其更改为N/A,但是当我将这两行代码放入其中时:

userDataGridView.Rows[i].Cells[column] = new DataGridViewTextBoxCell();
userDataGridView.Rows[i].Cells[column].Value = "N/A";

然后运行我得到运行时错误说Can't assign N/A to DateTime.如何解决此问题?

1 个答案:

答案 0 :(得分:0)

您可以尝试以下代码:

if (userDataGridView.Rows[i].Cells[column].Value == null || userDataGridView.Rows[i].Cells[column].Value.ToString() == "")
                        {
                            userDataGridView.Rows[i].Cells[column].Value = userDataGridView.Rows[i].Cells[column].Value.ToString().Replace("", "N/A");
                        }

这将检查单元格是否为null然后用N / A替换它。但这不可取,因为db值为DateTime,如果您无法正确转换它将导致将来出现问题。因此,如果从db中提取空值,则可以将其显示为N/A,但是当它存储回db时,应将其转换回null或实际DateTime