1. 本际云推荐 - 专业推荐VPS、服务器,IDC点评首页
  2. 云主机运维
  3. VPS运维

用ASP.NET实现Repeater控件的数据绑定演示

Repeater基础

在aspx文件中可以使用Repeater控件,在<ItemTemplate></ItemTemplate>中可以融入自己的代码,也需要使用到变量<%#Eval("SellerName")%>,注意两侧的引号。

用ASP.NET实现Repeater控件的数据绑定演示

在.cs文件中使用数据绑定的代码,与.aspx中相对照:

protected void Page_Load(object sender, EventArgs e)
{
  if (!IsPostBack)
  {
    DataTable dt = SellerDA.GetTopHotSellers(9);
    SellerRpt.DataSource = dt;
    SellerRpt.DataBind();
  }
}

优化

DataItem比Eval函数执行更快。可以使用DataItem来减少Eval函数的执行步骤,优化页面解析时间:

<%#((DataRowView)Container.DataItem)["SellerName"]%>替换<%#Eval("SellerName")%>

如果数据源是ArrayList,并且ArrayList为一列string数组,则可不用写出列名。

处理后显示

当从数据库中检索出来的数据并不适合直接显示出来时(例如日期的格式,字符串长度的控制),可以使用标签来占位,在onitemdatabound函数中自行控制:

<asp:Label ID="colinDate" runat="server" Text=""></asp:Label>

嵌套Repeater的显示

某些复杂的显示逻辑需要用到Repeater的嵌套,这里需要自行控制2层数据源的数据绑定。

<asp:Repeater ID="Repeater1" runat="server" OnItemDataBound="ProRpt_ItemDataBound">
  <ItemTemplate>
    <asp:Repeater ID="ParaRpt" runat="server" OnItemDataBound="ParaRpt_ItemDataBound">
      <ItemTemplate>
        <asp:Label ID="bar" CssClass="bar" runat="server" Text="|"></asp:Label>
        <span class="para">
          <%# Eval("Name")%>:
          <%# Eval("Value")%></span>
      </ItemTemplate>
    </asp:Repeater>
  </ItemTemplate>
</asp:Repeater> 

原创文章,作者:小编小本本,如若转载,请注明出处:https://www.benjiyun.com/yunzhujiyunwei/vps-yunwei/7284.html