zoukankan      html  css  js  c++  java
  • ASP.NET控件Repeter的使用

    使用repeter控件,绑定数据源,能够省去在前台页面中拼接繁杂的for、foreach的时间,整个页面看起来也更加直观。常配合<select>标签、<table>标签使用。

    其中<itemTemplate>不断循环,<headerTemplate>和<footerTemplate>只执行一次,适用于<table>标签。

    后台后置类获取List<Model.Student> 这样一个对象,Model.Student中有 studentId 和 studentName 两个字段。

    //以下代码在page_Load方法中
    if (!IsPostBack)
                {
                    BLL.Student bllStu = new BLL.Student();
                    List<Model.student> stuList= bllStu.GetStudentList();
                     
                    //给repeater绑定数据源,记得dataBind()  
                    Repeater1.DataSource = stuList;
                    Repeater1.DataBind();  
                }            

    Select例子:

    绑定后把想要循环的内容写在<itemTemplate>标签内。

    1 <select name="stuDropDownList">
    2      <asp:Repeater ID="Repeater1" runat="server">
    3        <ItemTemplate>
    4          <option value="<%#Eval("studentId") %>"><%#Eval("studentName")%></option>
    5        </ItemTemplate>
    6      </asp:Repeater>
    7 </select>

    Table例子:

    一样要像上边的代码一样到后台给repeater控件绑定数据源。下面的例子展示了如何使用headerTemplate和footerTemplate

    <table border="1" cellpadding="0" cellspacing="0">
                <asp:Repeater ID="Repeater1" runat="server">
                    <HeaderTemplate>
                <
    tr><th>学号</th><th>姓名</th></tr> </HeaderTemplate> <ItemTemplate>
                <
    tr><td><%#Eval("studentId") %></td><td><%#Eval("studentName")%></td></tr> </ItemTemplate> <FooterTemplate> <!--这里可以放页码--> </FooterTemplate> </asp:Repeater> </table>

    下面附一段不用repeater,使用foreach循环来给select绑定数据的代码,感受一下区别。

    1  <select name="stuDropDownList">
    2         <%foreach (var stu in stuList)
    3         {%>
    4         <option value="<%=stu.studentId %>">
    5         <%=stu.studentName%></option>
    6         <%  } %>
    7 </select>

    代码量也不多,不过看起来就没有repeater清晰了。

  • 相关阅读:
    Python常用模块之sys
    python操作zip文件
    python的os模块
    [Python模块学习]用qrcode模块生成二维码
    os模块os.walk() 方法和os.path.join()的简单使用
    python操作redis详解
    成员变量和局部变量
    类和对象 引用属性和方法举例
    Java String字符串/==和equals区别,str。toCharAt(),getBytes,indexOf过滤存在字符,trim()/String与StringBuffer多线程安全/StringBuilder单线程—— 14.0
    泛型--面向对象8
  • 原文地址:https://www.cnblogs.com/2333/p/5071172.html
Copyright © 2011-2022 走看看