【问题标题】:Pagination for Grid View网格视图的分页
【发布时间】:2012-11-07 12:49:52
【问题描述】:

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

【问题讨论】:

    标签: c# asp.net gridview


    【解决方案1】:

    带回整个结果集以获取分页可能不是您想要的方式。您应该真正扩展 GridView 控件并引入虚拟项目计数属性。然后,您应该将虚拟项目计数传递给网格中所有记录的计数。此外,您还应确保 OnPageIndexChanging 事件应将当前页面索引设置为下一页。

    【讨论】:

      【解决方案2】:

      为此我得到了更好的方法,使用存储过程并根据 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

      【讨论】:

      • 嘿,我认为通过使用扩展的 GridView 它的方法更简洁,因为分页将由控件本身处理,但是,您的方法同样有效。
      • 如果性能真的很重要,还有另一种使用 jquery 客户端重复和添加分页(相同概念)的最佳方法。 encosia.com/….
      • 是的defo,只需要确保不返回完整的结果集并且每次只处理pagesize记录集:)
      猜你喜欢
      • 2011-06-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-22
      相关资源
      最近更新 更多