涛神联合Dxper.Net开发者论坛管理在腾讯课堂开启DevExpress培训课程 详情可以加群QQ群:294560883
DevExpress 获取TreeList 过滤后的结果,控件本身不像GridView那样提供自带的方法(详情可以查看我的另一篇博文),那么唯一的方式就是遍历所有节点,如果判断节点是否显示即TreeListNode.Visible是否true,则表明节点是过滤后的。
那么只要知道如果获取所有节点并且遍历节点集合,就可以获取过滤后的结果,TreeList获取所有的节点的方法是TreeList.GetNodeList();
大致代码如下:
List<TreeListNode> nodes = treeList1.GetNodeList();//获取treelist的所有节点集合
//定义一个新集合,用来添加过滤的节点对象,如果treelist是数据绑定的方式就根据具体的数据源类型来决定这个object的类型,
//如果是非绑定的方式,不需要这个集合,直接换成treeListnode的集合
List<object> entities=new List<object>();
foreach (TreeListNode node in nodes)
{
if (node.Visible)
{
entities.Add(treeList1.GetDataRecordByNode(node));
}
}