网格视图的分页

时间:2012-11-07 12:49:53

标签: c# asp.net gridview

我正在使用asp.net 4.0的网格视图。我想使用分页。 我正在使用SQL查询处理分页。我只得到记录的数量,我想在我的网格中显示。我想将记录的总数设置为我的网格,以便我的网格根据我的记录总数显示页码(例如,1 2 3 .... 8)。我的网格应该告诉我当前页面编号是什么。 我无法根据总记录数设置页码。 请帮帮我。 在此先感谢。

2 个答案:

答案 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事件应该将当前页面索引设置为下一页。