我遇到了与Listview关联的两个Datapagers的问题。这是我的页面:
<asp:DataPager ID="PagerTop" runat="server" PagedControlID="pp" QueryStringField="page" PageSize="30"></asp:DataPager>
<asp:ListView ID="pp" runat="server" ItemPlaceholderID="holder" EnableViewState="true" OnPagePropertiesChanging="PagePropertiesChanging">
...
</asp:ListView>
<asp:DataPager ID="PagerBottom" runat="server" PagedControlID="pp" QueryStringField="page" PageSize="30"></asp:DataPager>
后面的代码如下
Private Sub Page_PreRender(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.PreRender
Dim MyData As List(Of Product)
MyData = ResultsManager.GetResults()
pp.DataSource = MyData
pp.DataBind()
End Sub
Private Sub PagePropertiesChanging(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.PagePropertiesChangingEventArgs)
PagerTop.SetPageProperties(e.StartRowIndex, e.MaximumRows, False)
PagerBottom.SetPageProperties(e.StartRowIndex, e.MaximumRows, False)
pp.DataBind()
End Sub
当我更改页面时,列表视图会更新并显示与指示页面对应的结果,PagerTop
会显示所选页面。这就是他们应该如何运作的方式。但PagerBottom
仍停留在第1页,并且永远不会改变!
点击哪个寻呼机无关紧要,PagerTop
始终有效,PagerBottom
始终停留在第1页。
我的精彩想法已经不多了......这里可能出现什么问题?
答案 0 :(得分:0)
这里给出了一个很好的例子 http://www.c-sharpcorner.com/uploadfile/nipuntomar/datapager-in-Asp-Net-3-5/ 只需放置另一个具有不同ID的数据寻呼机,无需任何更改。我已经为我做过尝试和工作。