[英]Display hierarchal data from list of objects
我有一個要以特定方式顯示的對象列表,並且遇到的麻煩比我預期的要多。 本質上,我需要如下設置:
重復此過程,直到在每次頁面加載時提取列表的末尾。 我嘗試過嵌套中繼器,但失敗了。
<asp:Repeater runat="server" ID="parentMeetingRepeater" >
<ItemTemplate>
<h5><%# GetParentMeetingName(Eval("Id")) %></h5>
<hr />
<asp:Repeater runat="server" ID="childMeetingRepeater" >
<HeaderTemplate>
<table style="width: 100%;">
</HeaderTemplate>
<ItemTemplate>
<tr>
<td>
<a href="/Display.aspx?ccbid=<%# Eval("Id")%>"><%# Eval("Name") %></a>
</td>
<td>
<%# Eval("Description") %>
</td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
</ItemTemplate>
父級中繼器上發生了一個事件,要對第二個中繼器進行數據綁定,但是我很快意識到沒有邏輯告訴它僅顯示具有父級為2的ID的級別3項。 有什么想法可以解決這個問題嗎? 我認為嵌套中繼器可能是錯誤的方向。 - 謝謝
得到一些建議后,我最終改用了列表視圖。 與數據對象列表和嵌套轉發器的正確綁定使我感到不安,因此這是一條更簡潔的方法。
<asp:ListView ID="uxTaxonomies" runat="server" ItemPlaceholderID="itemPlaceholder">
<LayoutTemplate>
<asp:PlaceHolder ID="itemPlaceholder" runat="server"></asp:PlaceHolder>
</LayoutTemplate>
<ItemTemplate>
<h5><%#((TaxonomyData)Container.DataItem).Name %></h5>
<hr/>
<asp:ListView ID="uxTaxChildren" runat="server" ItemPlaceholderID="itemPlaceholder" DataSource="<%#((TaxonomyData)Container.DataItem).Taxonomy %>">
<LayoutTemplate>
<table class="noBorder">
<tbody>
<asp:PlaceHolder ID="itemPlaceholder" runat="server"></asp:PlaceHolder>
</tbody>
</table>
</LayoutTemplate>
<ItemTemplate>
<tr>
<td><a href="/MeetingDisplay.aspx?ccbid=<%#((TaxonomyData)Container.DataItem).Id %>"><%#((TaxonomyData)Container.DataItem).Name %></a> </td>
<td><%#((TaxonomyData)Container.DataItem).Description %></td>
</tr>
</ItemTemplate>
</asp:ListView>
</ItemTemplate>
</asp:ListView>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.