我有这段代码:
<asp:Repeater id="repeaterCategories" runat="server">
<ItemTemplate>
<div class="categorie-item">
...
<asp:Repeater id="repeaterSubCategories" runat="server">
<ItemTemplate>
...
</ItemTemplate>
</asp:Repeater>
</div>
</ItemTemplate>
</asp:Repeater>
对于每个repeaterSubCategories
,和repeaterCategories.SubCategories
必须为repeaterCategories
。所以我必须动态绑定(对于每个第一个转发器迭代)一个子类别列表。
我可以这样做吗?怎么样?
答案 0 :(得分:5)
如果您有这样的嵌套转发器:
<asp:Repeater ID="Repeater1" runat="server" OnItemDataBound="Repeater1_ItemDataBound">
<ItemTemplate>
<asp:Repeater ID="Repeater2" runat="server"></asp:Repeater>
</ItemTemplate>
</asp:Repeater>
您可以使用它来绑定它:
protected void Repeater1_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
var data = ((MyClass)e.Item.DataItem).Subcategories;
var repeater2 = (Repeater)e.Item.FindControl("Repeater2");
repeater2.DataSource = data;
repeater2.DataBind();
}
答案 1 :(得分:0)
看一下这个链接:http://support.microsoft.com/default.aspx?scid=kb;en-us;306154 它解决了我的问题。