IsNull是RowData对象中用来判断指定列是否为空值的。如果为空则返回True,不为空则返回False。主要有两种用法
RowData.IsNull(colName)
RowData.IsNull(colName,DataRowVersion) 这里的DataRowVersion跟索引器中的DataRowVersion是一致的。
下面就看看使用的示例
Vb.Net |
Dim tbl As SmGrid=Proj.CurrentSmGrid If tbl Is Nothing Then Return Dim dr As RowData=tbl.CurrentRowData If dr Is Nothing Then Return '判断当前行是否有错误信息,如果有 If dr.IsNull("ID") Then dr("ID")=Sys.NewGUID End If '如果是已经修改过的列,可以通过行版本来访问原本的数据 If dr.IsNull("ID",DataRowVersion.Original) Then 'dr.OriginalIsNull("ID")和dr.IsNull("ID",DataRowVersion.Original)效果是一致的 Dim bnlIsNull As Boolean=dr.OriginalIsNull("ID") End If 'dr.OriginalValue("ID")和dr("ID",DataRowVersion.Original)效果也是一样的 If dr.OriginalValue("ID")=dr("ID",DataRowVersion.Original) Then Proj.MsgDebug.Add("两个返回值一样") Else Proj.MsgDebug.Add("两个返回值不一样") End If |
C# |
SmGrid tbl = Proj.CurrentSmGrid; if (tbl == null) return; RowData dr = tbl.CurrentRowData; if (dr == null) return; // 判断当前行是否有错误信息,如果有 if (dr.IsNull("ID")) dr["ID"] = Sys.NewGUID; // 如果是已经修改过的列,可以通过行版本来访问原本的数据 if (dr.IsNull("ID", DataRowVersion.Original)) { // dr.OriginalIsNull("ID")和dr.IsNull("ID",DataRowVersion.Original)效果是一致的 bool bnlIsNull = dr.OriginalIsNull("ID"); } // dr.OriginalValue("ID")和dr("ID",DataRowVersion.Original)效果也是一样的 if (dr.OriginalValue("ID") == dr("ID", DataRowVersion.Original)) Proj.MsgDebug.Add("两个返回值一样"); else Proj.MsgDebug.Add("两个返回值不一样"); |