关于DataRows

DataRows表示数据行的集合。

例如:

Dim dr As DataRow
dr =
DataTables("订单").DataRows(0)

变量dr引用了订单表的第一行。
注意这个第一行可能不是你看到的第一行,你看到的是Table中的第一行。
DataTable包括所有行,而且行始终是按照加入的顺序排序。

既然是集合,当然可以用For Each语句遍历集合中的所有元素。

例如:

Dim Sum As Integer
For
Each dr As DataRow In DataTables("订单").DataRows
    Sum = Sum + dr(
"数量")
Next

Output.Show(
"总销售数量为:" & Sum)

当然,上面的代码只是为了说明如何遍历DataRows这个集合,更简单的代码应该是:

Dim Sum As Integer = DataTables("订单").Compute("Sum(数量)")
Output.Show(
"总销售数量为:"
& Sum)

利用DataRows的Count属性,可以返回总的行数, 例如:

MessageBox.Show("目前行数:" & DataTables("订单").DataRows.Count)

DataRows返回的集合包括所有行,而且是无顺序的,如果希望得到符合条件的部分行,或者要按特定顺序返回行,可以参考DataTable的Select方法。

DataRows的常用方法:

名称 说明
AddNew 增加行,等同于DataTable的AddNew方法。
Delete 删除指定位置的行
Clear 清除所有行

例如:

With DataTables("订单")
   
.DataRows.AddNew() '增加一行
    .DataRows.AddNew(3) '增加 三行
   
.DataRows.Delete(0) '删除第一行
   
.DataRows.Clear() '清除所有行
End With

Clear方法会直接从后台清除所有行,并即刻生效,且不能撤销,所以一定要慎重使用。


本页地址:http://www.foxtable.com/webhelp/topics/0419.htm