子级Repeater获取父级Repeater绑定项的值

1.子级Repeater中绑定父级的某个字段:

<%# DataBinder.Eval((Container.NamingContainer.NamingContainer as RepeaterItem).DataItem, "ModuleName") %>

2.在子级Repeater中引用父级某个控件的值:

<%# ((Label)((RepeaterItem)((Repeater)(((RepeaterItem)Container).NamingContainer)).NamingContainer).FindControl("moduleID")).Value %>

<asp:Repeater ID="Repeater1" runat="server"> 
     
<ItemTemplate> 
        OrderID: 
<%# Eval("OrderID")%>
        CustomerID : 
         
<asp:Label ID="Label1" runat="server" Text='<%#Eval("CustomerID")%>'></asp:Label> <br />
        
<asp:Repeater ID="Repeater2" runat="server" DataSource='<%# GetOrderDetails(Convert.ToInt32(Eval("OrderID"))) %>'> 
            
<ItemTemplate>  
                
&nbsp;&nbsp;
                子容器得到CustomerID : 
<%# ((Label)((RepeaterItem)((Repeater)(((RepeaterItem)Container).NamingContainer)).NamingContainer).FindControl("Label1")).Text %> 
                UnitPrice: 
<%#Eval("UnitPrice")%> <br />
            
</ItemTemplate> 
        
</asp:Repeater> 
        
<br />                 
     
</ItemTemplate> 
</asp:Repeater>

原文地址:https://www.cnblogs.com/ANDY_ZHANG/p/2497626.html