Insus.NEt曾经有写过一篇《Repeater控件最后一笔记录高亮显示》 ,它的实现是先宣告一个页面级的变量,然后在Data_Binding()方法内获取数据源的记录总数。

本篇是的重点,就是改变前一篇的写法,不必宣告一个页面级的变量,而是直接在OnItemDataBound事件获取。
先看.aspx:
在Repeater控件的OnItemDataBound获取数据源记录总数_OnItemDataBound


去.aspx.cs写code behind代码:
在Repeater控件的OnItemDataBound获取数据源记录总数_FindControl_02


上图中的#35行代码,是把sender对象转换为Repeater控件。
#37行代码,是把Rpt.DataSource转换为DataTable,为什么要转换为DataTable对象,而不是其它类型的数据集? 因为在Data_Binding()中给Repeater控件绑定的就是一个DataTable数据集。因此在转换时,需要匹配对应即可。

还是要预览一下网页运行的效果:
在Repeater控件的OnItemDataBound获取数据源记录总数_Attributes_03