我正在使用asp.net 4.0的网格视图。我想使用分页。 我正在使用SQL查询处理分页。我只得到记录的数量,我想在我的网格中显示。我想将记录的总数设置为我的网格,以便我的网格根据我的记录总数显示页码(例如,1 2 3 .... 8)。我的网格应该告诉我当前页面编号是什么。 我无法根据总记录数设置页码。 请帮帮我。 在此先感谢。
答案 0 :(得分:1)
我使用存储过程并基于PageIndex和PageSize返回数据的更好方法。
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false">
<Columns>
//your data
</Columns>
</asp:GridView>
显示分页
<asp:Repeater ID="rptPager" runat="server">
<ItemTemplate>
<asp:LinkButton ID="lnkPage" runat="server" Text = '<%#Eval("Text") %>' CommandArgument = '<%# Eval("Value") %>' Enabled = '<%# Eval("Enabled") %>' OnClick = "Page_Changed"></asp:LinkButton>
</ItemTemplate>
</asp:Repeater>
这就是你想要的:Custom Paging in ASP.Net GridView using SQL Server Stored Procedure
答案 1 :(得分:1)
恢复整个结果集以获得分页可能不是你想要的方式。您应该真正扩展GridView控件并引入虚拟项目计数属性。然后,您应该将虚拟项目计数传递给网格中所有记录的计数。此外,您应该确保OnPageIndexChanging事件应该将当前页面索引设置为下一页。