首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> ASP.NET 基礎 >> 關於ASP.NET

動態建立 Repeater 綁定資料:ItemDataBound 事件中尋找控件並設定屬性

     編輯:關於ASP.NET

因介面限制無法用現成選單控件,改用 Repeater 動態渲染。標記:

<asp:Repeater ID="CategoryList" runat="server" OnItemDataBound="CategoryList_ItemDataBound">
  <HeaderTemplate><div style="width:90%;..."></HeaderTemplate>
  <ItemTemplate>
    <div style="line-height:30px;">
      <img src="images/jt_red.gif" /><img src="images/jt_red.gif" />
      <asp:HyperLink ID="hlRootCategory" CssClass="dh" runat="server">Category</asp:HyperLink>
    </div>
  </ItemTemplate>
  <FooterTemplate></div></FooterTemplate>
</asp:Repeater>

後端 ItemDataBound 中:

protected void CategoryList_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
    if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
    {
        var hl = (HyperLink)e.Item.FindControl("hlRootCategory");
        var drv = (DataRowView)e.Item.DataItem;
        hl.Text = drv["CategoryName"].ToString();
        hl.NavigateUrl = "~/Category.aspx?id=" + drv["CategoryID"];
    }
}

關鍵:e.Item.FindControl 取得模板內控件,e.Item.DataItem 強轉資料列。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved