如何在Repeater的页脚中显示DataTable行

时间:2011-10-17 12:11:00

标签: asp.net data-binding repeater

我需要创建一个表,其中所有行都在<tbody></tbody>内,最后一行(总和列数之和)在<tfoot></tfoot>内。

我可以将DataTable的最后一行(绑定到Repeater)放入页脚,我可以在哪里定义合适的模板吗?

1 个答案:

答案 0 :(得分:3)

我建议通过转发器的DataTable.Compute中的ItemDataBound对列进行求和。

例如(VB.NET,未经测试,假设有一个名为'Total'的列):

Sub R1_ItemDataBound(Sender As Object, e As RepeaterItemEventArgs)
     If (e.Item.ItemType = ListItemType.Footer) Then
        Dim tbl = DirectCast(DirectCast(sender, Repeater).DataSource, DataTable)
        Dim total = DirectCast(tbl.Compute("Sum(Total)", Nothing), Double)
        ' show this value in appropriate cell/control in footer '
    End If
End Sub