簡単に言えば、それはできないということだと思いますが、それを実現するには何らかの方法が必要です。アイテムのリストを作成し、その中にアイテムのリストを入れて、1 つのレベルだけをネストしたいと考えています。すなわち:
Repeater
UserControl1
UserControl1
UserControl1
UserControl1
UserControl1
UserControl1
UserControl1
サーバー側の Click イベント内でこのリストに追加しているので、可能であれば LoadControl の使用を避けたいと思います。
簡単な疑似コードの例を書き出そうとします。次のようになります。
ページ.aspx
<asp:repeater runat="Server" id="someRepeater">
<uc:UserControl1 runat="Server" id="ctrlParent" />
</asp:repeater>
UserControl1.ascx
<asp:label id="label1" runat="server" />
<asp:repeater runat="server" id="childRepeater">
<uc:UserControl1 runat="server" id="ctrlChild" />
</asp:repeater>
UserControl1.ascx.vb
If me.HasChildren then
'BindChildRepeater'
end if
sub Fill(Data as RelevantData)
label1.Text = Data.SomeText
end sub
sub ChildRepeater_ItemDataBound(object as sender, e as someArgs)
Dim childCtrl = e.item.findcontrol("ctrlChild")
childCtrl.Fill(e.item.dataitem)
end sub