RowState
返回行的状态。
行状态是一个DataRowState型枚举,包括以下值:
值 |
说明 |
Added |
新增加的行 |
Modified |
已经修改过的行 |
Unchanged |
未曾修改的行 |
Detached |
刚刚创建,还未添加到DataTable中的行;在讲述事件编程的时候,我们会接触到这种状态的行。 |
例如,统计一下订单表中新增行的订购数量之和:
Dim
dt As DataTable = DataTables("订单")
Dim sum As Long
For Each dr As DataRow In dt.DataRows
If dr.RowState = DataRowState.Added Then
sum = sum + dr("数量")
End If
Next
Output.Show(Sum)
现在不只是这个几个了。很多人在这里误会了。而且还有人认为上面的4个状态,就是对应1、2、3、4,其实是1、2、4、8、16
用代码去列举所有的行状态:
For Each item As DataRowState In [Enum].GetValues(Gettype(DataRowState ))
Output.Show(item & "-" & item.Tostring())
Next
得出结果
1-Detached (刚新建,还没进去表里,你看不到。即是datarowAdding事件里的那种行状态)
2-Unchanged (蓝色行号)
4-Added (红色行号)
16-Modified (橙色行号)
现在有 1 2 4 8 16,帮助文档里解释一下这几个行吧,很多稍微进阶一点,都想知道行具体状态,方便是跟进事件。我觉得我这里写行号颜色,很好理解,其实很多人就是想知道行号颜色对应的状态去编辑事件,一开始只看着这几个状态,都无法理解,其实只需要用行号颜色解释,一下子就懂了!
[此贴子已经被作者于2016/9/7 21:25:31编辑过]