c#:
View Code
1 private void RpTypeBind() 2 {//GetQuestionTypeAndCount() 返回一个datatable 3 this.rptypelist.DataSource = LiftQuestionCtr.GetQuestionTypeAndCount(); 4 this.rptypelist.DataBind(); 5 } 6 protected void rptypelist_ItemDataBound(object sender, RepeaterItemEventArgs e) 7 { 8 9 //判断里层repeater处于外层repeater的哪个位置( AlternatingItemTemplate,FooterTemplate, 10 11 //HeaderTemplate,,ItemTemplate,SeparatorTemplate) 12 if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) 13 { 14 Repeater rep = e.Item.FindControl("rpquestionlist") as Repeater;//找到里层的repeater对象 15 DataRowView rowv = (DataRowView)e.Item.DataItem;//找到分类Repeater关联的数据项 16 int typeid = Convert.ToInt32(rowv["qtid"]); //获取填充子类的id 17 rep.DataSource = LiftQuestionCtr.GetSomeQuestionsByTypeid(typeid, 2); 18 rep.DataBind(); 19 } 20 }
ASPX:
ASPX
1 <table border="0" cellpadding="0" cellspacing="0" style="margin-bottom: 5px" width="100%"> 2 <asp:Repeater runat="server" ID="rptypelist" OnItemDataBound="rptypelist_ItemDataBound"> 3 <ItemTemplate> 4 <tr> 5 <td class="fb"> 6 <a href="Lists.aspx?Qtid=<%#Eval("qtid") %>"><%#Eval("qtypename") %></a> <span id="askCount_15" 7 class="date2">[<%#Eval("typecount")%>]</span> 8 </td> 9 </tr> 10 <tr> 11 <td> 12 <div id="askTop2_15" class="ask_list"> 13 <asp:Repeater runat="server" ID="rpquestionlist"> 14 <ItemTemplate> 15 <a href="Question.aspx?qid=<%#Eval("liftquestionid")%>"> 16 <%#Eval("questiontitle")%></a><br /> 17 </ItemTemplate> 18 </asp:Repeater> 19 </div> 20 </td> 21 </tr> 22 </ItemTemplate> 23 </asp:Repeater> 24 </table>