C# 如何使用RecordFilters筛选TreeWebDV

C# 如何使用RecordFilters筛选TreeWebDV,c#,.net,syncfusion,C#,.net,Syncfusion,我是C#和SyncFusion的新手,非常感谢您的帮助 过滤gridGroupingControl后,我需要在TreeViewPresenter(TreeViewAdv)中显示正确的记录 首先,我考虑使用以下过滤器: detailGroupingControl.TableDescriptor.RecordFilters 在树eviewPresenter中设置这些过滤器,但它似乎不是这样工作的。是否有任何简单的方法可以使用与gridGroupingControl相同的筛选标准筛选树?如果要将记录

我是C#和SyncFusion的新手,非常感谢您的帮助

过滤
gridGroupingControl
后,我需要在
TreeViewPresenter(TreeViewAdv)
中显示正确的记录

首先,我考虑使用以下过滤器:

detailGroupingControl.TableDescriptor.RecordFilters

树eviewPresenter
中设置这些过滤器,但它似乎不是这样工作的。是否有任何简单的方法可以使用与
gridGroupingControl
相同的筛选标准筛选树?

如果要将记录筛选器从一个TreeView节点添加到另一个TreeView节点,则必须在列表中添加网格的对象。使用此列表,可以将筛选反映到所有TreeView节点。请参考以下代码和样本以供参考

//Used to save the objects of all grids
List<GridGroupingControl> grids = new List<GridGroupingControl>();

//add the grid to the list
grids.Add(GridGroupingControl);

void RecordFilters_Changed(object sender, Syncfusion.Collections.ListPropertyChangedEventArgs e)
{
    Syncfusion.Grouping.RecordFilterDescriptorCollection filters = sender as RecordFilterDescriptorCollection;
    foreach (GridGroupingControl grid in grids)
    {
        foreach(RecordFilterDescriptor filter in filters)
        {
            //To avoid the repeated objects from the list
            if (grid.TableDescriptor.RecordFilters.Contains(filter))
                continue;
            grid.TableDescriptor.RecordFilters.Add(filter);
        }
    }
}
//用于保存所有栅格的对象
列表网格=新列表();
//将网格添加到列表中
添加(GridGroupingControl);
无效记录筛选器\u已更改(对象发件人,Syncfusion.Collections.ListPropertyChangedEventArgs e)
{
Syncfusion.Grouping.RecordFilterDescriptorCollection筛选器=发件人作为RecordFilterDescriptorCollection;
foreach(网格分组网格中的控制网格)
{
foreach(过滤器中的RecordFilterDescriptor过滤器)
{
//避免列表中重复的对象的步骤
if(grid.TableDescriptor.RecordFilters.Contains(filter))
继续;
grid.TableDescriptor.RecordFilters.Add(filter);
}
}
}

您正在将过滤器设置为网格,但我希望它们过滤我的树节点。树不拥有.TableDescriptor.RecordFilters.Add(filter)等方法;目前,我只是将网格中的每一行以循环的方式放入我的树中