Devexpress-我如何建立一个Gridcontrol';s来自另一个GridControl的排序/筛选数据上

本文关键字:另一个 GridControl 排序 数据 筛选 何建立 建立 Devexpress- Gridcontrol 一个 | 更新日期: 2023-09-27 17:59:21

我的表单上有两个GridControls。一个是相当大的数据集,包括一个名为Score的列。我希望我的另一个GridControl显示其中的一个子集(例如,基于Score值的Top 3和Bottom 3)。

我怎样才能最好地做到这一点?如果它是同一个GridControl,我想我可以使用不同的视图,但由于它是完全独立的,我应该只获取视图的副本,过滤/排序数据并将其显示为新的数据集吗?或者有没有一种方法可以将我的第二个GridControl的数据链接到我的第一个数据?

编辑:我可以做grid2.datasource = grid1.datasource,然后从那里开始。表不会有任何动态更新,所以也许这就是前进的方向?

Devexpress-我如何建立一个Gridcontrol';s来自另一个GridControl的排序/筛选数据上

我将使用以下方法:

1) 创建一个新的DataView,根据您的方法对其进行筛选,并将第二个gridControl的DataSource设置为此DataView;

2) 将第二个GridControl的DataSource属性设置为相同的值,并筛选相应的GridView。

无需创建新的DataView。查看gridview的CustomRowFilter事件。

使用e.ListSourceRow获取数据表中的行。

因此,如果假设您希望显示值>25的行,并隐藏其余的

gridView_CustomRowFilter(object sender, RowFilterEventArgs e)
{
      if(dataset.datatable[e.ListSourceRow]["ColumnName"] < 25)
      {  
          e.visible = false;
          e.handled = true;
      }
}