'获取上一行
Select Case e.DataCol.Name
Case "第一列", "第二列"
Dim dr As DataRow
Dim drs As List(Of DataRow)
dr = e.DataTable.Find("[_SortKey] < " & e.DataRow("_SortKey"), "[_SortKey] Desc") '找出上一行
Dim dr2 As DataRow '定义前一行变量
If dr IsNot Nothing Then '判断是否有上一行
dr2 = e.DataTable.Find("[_SortKey] < " & dr("_SortKey"), "[_SortKey] Desc")
End If
If dr Is Nothing Then '如果没有找到上一行,说明本行就是第一行
e.DataRow("计算一") = 0
dr = e.DataRow
End If
drs = e.DataTable.Select("[_SortKey] >= " & dr("_SortKey"), "[_SortKey]")
For i As Integer = 1 To drs.Count - 1 '重算余下行的
drs(i)("计算一") = drs(i - 1)("第一列") + drs(i - 1)("第二列")
drs(i)("计算二") = drs(i - 1)("第一列") + drs(i - 1)("第二列")
Next
End Select
此主题相关图片如下:计算问题二jpg.jpg
