这与我的earlier question有关,但我想我会简化它并对其进行挑战。鉴于下面的代码,你可以从后面的代码中更改“ChangeThisLabel”的值吗?更改嵌套ListView的LayoutTemplate中的项目
<asp:ListView ID="OuterListView" runat="server">
<LayoutTemplate>
<asp:PlaceHolder ID="itemPlaceHolder" runat="server" />
</LayoutTemplate>
<ItemTemplate>
<%#Eval("outer_value")%> <br/>
<asp:ListView ID="InnerListView" runat="server" DataSource='<%#Eval("inner") %>'>
<LayoutTemplate>
<asp:Label ID="ChangeThisLabel" runat="server" />
<asp:PlaceHolder ID="itemPlaceHolder" runat="server" />
</LayoutTemplate>
<ItemTemplate>
<%#Eval("inner_value")%> <br/>
</ItemTemplate>
</asp:ListView>
</ItemTemplate>
</asp:ListView>
我建议提交答案之前,你自己尝试它,因为我得到了很多在我先前的职位,对于单一的ListView做工精细的建议,但对嵌套的ListView涨时落了下来。
除非我遗漏了一些东西,否则这将不起作用,因为“ChangeThisLabel”在由内部ListView呈现时变成“ctl00_ctl00_BodyContentPlaceHolder_ReportContentPlaceHolder_OuterListView_ctrl0_InnerListView_ChangeThisLabel”。 – gfrizzle 2008-12-23 21:41:31
我的坏 - 我没有通过items集合来查找InnerListView,这就是为什么我没有任何运气。 – gfrizzle 2008-12-24 16:41:46