DevExpress实现TreeList向上递归获取符合条件的父节点

 更新时间:2014年08月06日 17:19:51   投稿:shichen2014  
这篇文章主要介绍了DevExpress实现TreeList向上递归获取符合条件的父节点,需要的朋友可以参考下

本文实例展示了DevExpress实现TreeList向上递归获取符合条件的父节点的方法,在一些项目开发中比较有实用价值,具体实现方法如下所示:

主要功能代码如下:

/// <summary>
/// 向上递归,获取符合条件的父节点
/// </summary>
/// <param name="node">需要向上递归的节点</param>
/// <param name="conditionHanlder">判断条件【委托】</param>
/// <returns>符合条件的节点【TreeListNode】</returns>
public static TreeListNode GetParentNode(this TreeListNode node, Predicate<TreeListNode> conditionHanlder)
{
  TreeListNode _parentNode = node.ParentNode;//获取上一级父节点
  TreeListNode _conditonNode = null;
  if (_parentNode != null)
  {
 if (conditionHanlder(_parentNode))//判断上一级父节点是否符合要求
 {
   _conditonNode = _parentNode;
 }
 if (_conditonNode == null)//若没有找到符合要求的节点,递归继续
   _conditonNode = GetParentNode(_parentNode, conditionHanlder);
  }
  return _conditonNode;
}

代码使用方法如下:

TreeListNode _node = e.Node;
TreeListNode _condionParent = _node.GetParentNode(n => n.GetNodeType() == NodeType.Cab);//获取类型为CAB类型的父节点
Trace.WriteLine(_condionParent.GetName());

相关文章

  • unity avprovideo插件的使用详解

    unity avprovideo插件的使用详解

    这篇文章主要介绍了unity avprovideo插件的使用详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • C#省份城市下拉框联动简单实现方法

    C#省份城市下拉框联动简单实现方法

    这篇文章主要介绍了C#省份城市下拉框联动简单实现方法,涉及字典的定义与索引的用法,是非常实用的技巧,需要的朋友可以参考下
    2014-12-12
  • 使用C#调用百度地图并实现坐标点的设置以及读取示例

    使用C#调用百度地图并实现坐标点的设置以及读取示例

    这篇文章主要介绍了使用C#调用百度地图并实现坐标点的设置以及读取示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • C#在后台运行操作(BackgroundWorker用法)示例分享

    C#在后台运行操作(BackgroundWorker用法)示例分享

    BackgroundWorker类允许在单独的专用线程上运行操作。如果需要能进行响应的用户界面,而且面临与这类操作相关的长时间延迟,则可以使用BackgroundWorker类方便地解决问题,下面看示例
    2013-12-12
  • 基于C#调用OCX控件的常用方法(推荐)

    基于C#调用OCX控件的常用方法(推荐)

    下面小编就为大家分享一篇基于C#调用OCX控件的常用方法推荐,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-12-12
  • Unity UGUI的Text文本组件使用示例

    Unity UGUI的Text文本组件使用示例

    这篇文章主要为大家介绍了Unity UGUI的Text文本组件使用示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-07-07
  • c# dataTable 合并两个列到一个新列中的简单实例

    c# dataTable 合并两个列到一个新列中的简单实例

    这篇文章介绍了c# dataTable 合并两个列到一个新列中的简单实例,有需要的朋友可以参考一下
    2013-10-10
  • c#调用c++的DLL的实现方法

    c#调用c++的DLL的实现方法

    本文主要介绍了c#调用c++的DLL的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-05-05
  • 如何利用C#正则表达式判断是否是有效的文件及文件夹路径

    如何利用C#正则表达式判断是否是有效的文件及文件夹路径

    项目中少不了读取或设置文件路径的功能,如何才能对输入的路径是否合法进行判断呢?下面这篇文章主要给大家介绍了关于C#利用正则表达式判断是否是有效的文件及文件夹路径的相关资料,需要的朋友可以参考下
    2022-04-04
  • C#实现文字视频生成器的示例代码

    C#实现文字视频生成器的示例代码

    这篇文章主要为大家详细介绍了如何利用C#实现简易的文字视频生成器,文中的示例代码讲解详细,具有一定的借鉴价值,需要的可以参考一下
    2022-10-10

最新评论