嵌套Repeater示例
<asp:Repeater ID="rptCategoryList" runat="server" OnItemDataBound="rptCategoryList_ItemDataBound"> <ItemTemplate> <div class="listBox"> <div class="title"><%# Eval("CategoryName") %></div> <div class="content"> <ul> <asp:Repeater ID="rptProductList" runat="server"> <ItemTemplate> <li> <%# Eval("ProductName") %> </li> </ItemTemplate> </asp:Repeater> </ul> </div> </div> </ItemTemplate> </asp:Repeater>
protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { List<Pro_Category> dtCategory = Pro_CategoryService.GetCategoryAll(); rptCategoryList.DataSource = dtCategory; rptCategoryList.DataBind(); } } protected void rptCategoryList_ItemDataBound(object sender, RepeaterItemEventArgs e) { if (e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType == ListItemType.Item) { Pro_Category drv = (Pro_Category)e.Item.DataItem; Repeater rptProductList = (Repeater)e.Item.FindControl("rptProductList"); rptProductList.DataSource = ProductService.GetProbyCidAndTop(Convert.ToInt32(drv.CategoryId), 100); rptProductList.DataBind(); } }