以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  我发现DataRowState 还有 8号状态!  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=90215)

--  作者:chen3728060
--  发布时间:2016/9/7 19:34:00
--  我发现DataRowState 还有 8号状态!
Added 1号新增加的行
Modified 2号已经修改过的行
Unchanged 3号未曾修改的行
Detached 4号刚刚创建,还未添加到DataTable中的行;在讲述事件编程的时候,我们会接触到这种状态的行。

 

今天我删除行的时候,把这玩意放上去,发现还有

8号状态,刚删了

请问DataRowState一共有多少个状态?好像还有16号!我印象中出现过


--  作者:有点蓝
--  发布时间:2016/9/7 21:02:00
--  
看看就知道了
For Each item As DataRowState In [Enum].GetValues(Gettype(DataRowState ))
    Output.Show(item & "-" & item.Tostring())
Next

--  作者:chen3728060
--  发布时间:2016/9/7 21:08:00
--  

1-Detached
2-Unchanged
4-Added
8-Deleted
16-Modified

那跟帮助文档的不一样,帮助文档是不是应该修改一下了?

 

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)


--  作者:chen3728060
--  发布时间:2016/9/7 21:12:00
--  回复:(有点蓝)看看就知道了For Each item As DataR...

我想问下这几个状态,对应的行号的颜色,我理解正确吗?

 

1-Detached (刚新建,还没进去表里,你看不到)
2-Unchanged (蓝色行号)
4-Added (红色行号)
8-Deleted (已删除,你看不到)
16-Modified (橙色行号)


--  作者:有点蓝
--  发布时间:2016/9/7 21:19:00
--  
是的

1-Detached (刚新建或者删除已保存,还没进去表里,你看不到)

8-Deleted (已删除未保存,你看不到)