[英]Paging for Listview inside a Gridview not working
我有一個嵌套在gridview內的列表視圖。
我試圖讓分頁在listview上工作。 我以為它將顯示分頁控件,並正常地通過它們進行分頁。
它確實顯示控件,並將顯示的結果集限制為適當的記錄數(pageSize),但是當我單擊分頁控件時,網格刷新,並且嵌套列表視圖沒有任何變化(它仍在第一頁上)。
我嘗試將listview嵌套在一個updatepanel中,但是行為仍然存在。 gridview本身已經在一個updatepanel中。
所以這是我的布局:
<Gridview ID="gvApplications" DataSourceID="odsApplications" DataKeyNames="ID" AutoGenerateColumns="false">
<Columns>
<asp:TemplateField HeaderText="Functions">
<ItemTemplate>
<asp:ListView ID="lvFunctions" runat="server" DataSource='<%#Eval("ApplicationFunctions") %>'
DataKeyNames="ID">
<LayoutTemplate>
<asp:DataPager ID="dpFunctions" runat="server" PageSize="1" PagedControlID="lvFunctions">
<Fields>
<asp:NextPreviousPagerField />
</Fields>
</asp:DataPager>
<ul>
<li>
<span ID="itemPlaceholder" runat="server" />
</li>
</ul>
</LayoutTemplate>
<ItemTemplate>
<asp:Label ID="lblFunction" runat="server" Text='<%# Eval("ApplicationFunction.Name") %>' />
</ItemTemplate>
</asp:ListView>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</Gridview>
有想法嗎?
老實說,我會考慮在此處使用主從模式。 關於此有很多代碼示例。 例如:
在某些情況下,詳細信息視圖(您的情況下為子對象)將顯示在單獨的頁面上。 無論哪種方式,通過在單獨的詳細信息視圖中顯示子對象,都可以避免編碼和顯示嵌套帶來的問題。
Matt Berseth提供了一些有關此主題的最佳代碼示例:
如果listview不使用數據源控件,則listview / datapager組合將無法正常工作。
嘗試在模板字段中包含數據源控件(對象數據源可能適用)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.