<asp:Repeater ID="A" runat="server" OnItemDataBound="rptypelist_ItemDataBound>
<ItemTemplate>
<%#Eval("a")%>
<asp:Repeater ID="B" runat="server" >
<%#Eval("b")%> </ItemTemplate> </asp:Repeater>
</ItemTemplate>
</asp:Repeater> protected void rptypelist_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
Repeater rpt = (Repeater)FindControl("B");
}
然后呢?
<ItemTemplate>
<%#Eval("a")%>
<asp:Repeater ID="B" runat="server" >
<%#Eval("b")%> </ItemTemplate> </asp:Repeater>
</ItemTemplate>
</asp:Repeater> protected void rptypelist_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
Repeater rpt = (Repeater)FindControl("B");
}
然后呢?
string clientId = rpt.ClientID;
string id = rpt.ID
获取A里的所有控件,循环判断控件类型
如果类型为:Repeater
实例化它,实例出来的就有ID属性~!
<ItemTemplate>
<tr>
<td>
<%#Eval("type")%>
</td>
</tr>
<tr>
<td>
<div>
<asp:Repeater runat="server" ID="Repeater2">
<ItemTemplate>
<%#Eval("name")%> </a> <br />
</ItemTemplate>
</asp:Repeater>
</div>
</td>
</tr>
</ItemTemplate>
</asp:Repeater>
protected void rptypelist_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
Repeater rep = e.Item.FindControl("Repeater2") as Repeater;
DataRowView rowv = (DataRowView)e.Item.DataItem;
}
}
现在报错是
未将对象引用设置到对象的实例 DataTable cc= IsRect.Get();
rpt.DataSource = cc;
郁闷了 唉。
单个Repeater的时候是好用的。。 内层的话就不好用