【问题标题】:Does Teleric RadGridView support remote paging in winforms?Telerik RadGridView 是否支持 winforms 中的远程分页?
【发布时间】:2014-05-28 07:19:07
【问题描述】:

我想知道 Teleric gridview 是否支持通过在每次更改页面索引时从 Web 服务获取数据来进行分页。

我尝试在 gridview 中启用分页,但似乎 gridview 对已设置为数据源的数据应用分页。

有没有办法在 Teleric gridview 中实现远程分页,因为我不想一次将所有数据都放在内存中?

【问题讨论】:

    标签: c# winforms gridview telerik


    【解决方案1】:

    您无法获取等于网格页面大小的记录并应用分页,这就像 我总共有 40 条记录,我只想获取 10 条记录并使用页面大小 10 进行分页时间>。因此,您要实现的目标是相互矛盾的,并且无法通过使用 gridview 的分页来实现,因为它需要数据源并且您必须获取所有记录来绑定它,那么为什么要调用 Web 服务来仅获取该数量的当您拥有所有记录时,记录等于您的页面大小。希望你明白了。

    【讨论】:

    • 感谢您的快速回复。但是,请注意我说的是 Teleric winforms 中的 gridview。
    • 我想我已经在我的问题中提到我不想将所有数据加载到内存中。
    • 是的,我发布了我的答案并告诉你,它也不可能通过举例说明。
    【解决方案2】:

    目前,RadGridView 不支持服务器端分页。但是,您可以使用虚拟模式功能并自行提取数据(根据您的请求)并填充单元格。有关此功能的更多信息,请点击此处:link

    【讨论】:

      【解决方案3】:

      使用 RadGridView for WinForms 进行分页模拟是可能的,尤其是在我们充分利用 LINQ 的情况下。 然而,这种方法很少用于 WinForms 应用程序,尽管在某些情况下也需要在 WinForms 网格中进行分页,尤其是当数据库中有数百万条记录时(字面意思)。 并且您也可以仅以编程方式访问 RadGridView.GridViewElement.PagingPanelElement 以进行更多更改。PagingPanelElement

      https://www.telerik.com/blogs/emulating-paging-with-radgridview-for-winforms-and-linq-with-1-million-records

      代码的重要部分是实际加载数据的 BindGrid 方法:

      private void BindGrid()
      {
       this.radGridView1.GridElement.BeginUpdate();
      
       IQueryable queryable = new DataClasses1DataContext().MyTables.AsQueryable();
      
       if (!String.IsNullOrEmpty(where))
          {
              queryable = queryable.Where(where);
          }
      
       if (!String.IsNullOrEmpty(orderBy))
          {
              queryable = queryable.OrderBy(orderBy);
          }
      
          radGridView1.DataSource = queryable.Skip(currentPageIndex * pageSize).Take(pageSize);
      
       this.radGridView1.GridElement.EndUpdate(true);
      
          EnableDisablePager();
      }
      

      【讨论】:

        猜你喜欢
        • 2020-04-25
        • 1970-01-01
        • 2021-09-22
        • 2021-04-29
        • 1970-01-01
        • 2021-03-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多