我在datagridview(Winform)上显示数据库表,并且我注意到该表的所有空值都已在datagridview上转换为类似于空格的内容。 如果我检查单元格的值为Null,则该语句变为false
dgv.Rows(r).Cells("Fld").Value Is Nothing = True
如果我查询单元格中字符串的长度,则会收到错误消息(因此它们可能不是空格)。
理想情况下,我想避免进行转换(在datagridview上具有数据库表中的所有null)。有什么办法可以停止转换?
如果这不可能,我如何确定这些单元格现在所容纳的是什么?
答案 0 :(得分:2)
null,没有什么是两个不同的东西...
关键字Nothing用来指定或指定引用类型的var不指向任何东西,为此var实例化任何对象。
而DBNull.Value是一个对象,用于指出db字段的类型为空值。
这里您需要使用dbnull ...
答案 1 :(得分:1)
单元格中的值为System.DBNull。 您可以使用IsDBNull方法对其进行测试。
例如:
If IsDBNull(dgv.Rows(r).Cells("Fld").Value) Then
' Do Something
End If