首页 > 代码库 > 转:Repeater嵌套绑定Repeater以及内层调用外层数据
转:Repeater嵌套绑定Repeater以及内层调用外层数据
<table border="0" cellpadding="0" cellspacing="0" style="margin-bottom: 5px" width="100%"> <asp:Repeater runat="server" ID="rptypelist" OnItemDataBound="rptypelist_ItemDataBound"> <ItemTemplate> <tr> <td class="fb"> <a href=http://www.mamicode.com/"Lists.aspx?Qtid=<%#Eval("qtid") %>"><%#Eval("qtypename") %></a> <span id="askCount_15" class="date2">[<%#Eval("typecount")%>]</span> </td> </tr> <tr> <td> <div id="askTop2_15" class="ask_list"> <asp:Repeater runat="server" ID="rpquestionlist"> <ItemTemplate> <a href=http://www.mamicode.com/"Question.aspx?qid=<%#Eval("liftquestionid")%>"> <%#Eval("questiontitle")%></a><br /> 父级数据:<%# DataBinder.Eval(((RepeaterItem)Container.Parent.Parent).DataItem, "qtid")%> 父级序号:<%# ((RepeaterItem)Container.Parent.Parent).ItemIndex %> </ItemTemplate> </asp:Repeater> </div> </td> </tr> </ItemTemplate> </asp:Repeater></table>
private void Repeater1Bind() {//GetQuestionTypeAndCount() 返回一个datatable this.rptypelist.DataSource = LiftQuestionCtr.GetQuestionTypeAndCount(); this.rptypelist.DataBind(); } protected void rptypelist_ItemDataBound(object sender, RepeaterItemEventArgs e) {//判断里层repeater处于外层repeater的哪个位置( AlternatingItemTemplate,FooterTemplate,//HeaderTemplate,,ItemTemplate,SeparatorTemplate) if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) { Repeater rep = e.Item.FindControl("rpquestionlist") as Repeater;//找到里层的repeater对象 DataRowView rowv = (DataRowView)e.Item.DataItem;//找到分类Repeater关联的数据项 int typeid = Convert.ToInt32(rowv["qtid"]); //获取填充子类的id rep.DataSource = LiftQuestionCtr.GetSomeQuestionsByTypeid(typeid, 2); rep.DataBind(); } }
转:Repeater嵌套绑定Repeater以及内层调用外层数据
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。