Repeater控件的交替项模板

AlternatingItemTemplate用于定义交替项呈现的内容和布局。所谓的交替项方式,就是在Repeater控件和DataList控件中允许奇偶项以不同的内容和布局形式显示数据,其中奇数行由AlternatingItemTemplate模板定义(索引号从1开始),偶数行由ItemTemplate模板定义(引号从0开始)。若仅定义了ItemTemplate模板而未定义AlternatingItemTemplate模板,则所有行全部按ItemTemplate模板指定的数据与布局形式显示。若仅定义了AlternatingItemTemplate模板而未定义ItemTemplate模板,则仅显示AlternatingItemTemplate模板指定的数据与布局形式的奇数行,偶数行不会显示。若这两种项模板都未定义,则什么数据都不会显示,那是没有意义的。

AlternatingItemTemplate模板的HTML标记为:

<AlternatingItemTemplate>

          <%--该模板内显示的内容与布局--%>

     </AlternatingItemTemplate>

因为AlternatingItemTemplate模板内含数据项,所以Repeater控件使用该模板时,也必须进行数据绑定,绑定方式同ItemTemplate模板。

为了说明AlternatingItemTemplate模板的使用方法和使用的效果,在上例中加进一个AlternatingItemTemplate模板,其页面的HTML视图变为下面的形式。

<form id="Form1" method="post" runat="server">

     <% ="品名 产地 单价"%>  <%--显示Repeater控件的头部--%>

     <asp:repeater id="Repeater1" runat="server">

        <AlternatingItemTemplate>

          <font face="黑体" color="#ff0000">

              <p>

<b><%#DataBinder.Eval(Container.DataItem,"商品名称")%></b>

<b><%#DataBinder.Eval(Container.DataItem,"产地")%></b>

<b><%#DataBinder.Eval(Container.DataItem,"单价")%></b>

</p>

</font>

         </AlternatingItemTemplate>

         <ItemTemplate>

            <font face="宋体" color="#0000ff">

               <p>

                   <%#DataBinder.Eval(Container.DataItem,"商品名称")%>

                   <%#DataBinder.Eval(Container.DataItem,"产地")%>

                   <%#DataBinder.Eval(Container.DataItem,"单价")%>

               </p>

     </font>

         </ItemTemplate>

     </asp:repeater>

</form>

< asp:repeater >标签内增加了一个<AlternatingItemTemplate>标签,它是交替项标签。交替项模板所指定的数据项与项模板所指定的数据项相同,它们显示同样的字段数据,不过显示的文本的字体与颜色是不同的。

不需要修改任何后台代码,按Ctrl+F5键运行程序,效果如下图。

     AlternatingItemTemplate交替项模板定义的是红色的黑体粗字,而ItemTemplate模板定义的是蓝色的宋体,使得页面有了一些变化。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章