DevExpress获取节点下可视区域子节点集合的实现方法
更新时间:2014年08月20日 09:01:27 投稿:shichen2014
这篇文章主要介绍了DevExpress获取节点下可视区域子节点集合的实现方法,是C#程序设计中较为常见的技巧,需要的朋友可以参考下
递归获取节点是很多程序项目中常见的技巧。本文就以实例展示了DevExpress获取节点下可视区域子节点集合的实现方法。分享给大家供参考之用,具体方法如下:
关键部分代码如下:
/// <summary>
/// 向下递归TreeListNode节点
/// </summary>
/// <param name="node">需要向下递归的节点</param>
/// <param name="conditionHanlder">委托</param>
public static void DownRecursiveNode(this TreeListNode node, Action<TreeListNode> conditionHanlder)
{
foreach (TreeListNode _childNode in node.Nodes)
{
conditionHanlder(_childNode);
DownRecursiveNode(_childNode, conditionHanlder);
}
}
/// <summary>
/// 获取节点下可视区域子节点集合
/// </summary>
/// <param name="node">需要获取可见子节点的节点</param>
/// <param name="conditonHanlder">条件委托</param>
/// <returns>可见子节点集合</returns>
public static List<TreeListNode> GetVisibleChildNodes(this TreeListNode node, Predicate<TreeListNode> conditonHanlder)
{
List<TreeListNode> _visibleChildNodes = new List<TreeListNode>();
TreeList _tree = node.TreeList;
DownRecursiveNode(node, n =>
{
RowInfo _rowInfo = _tree.ViewInfo.RowsInfo[n];
if (_rowInfo != null)
{
if (conditonHanlder(n))
{
_visibleChildNodes.Add(n);
}
}
});
return _visibleChildNodes;
}
/// <summary>
/// 获取节点下可视区域子节点集合
/// </summary>
/// <param name="node">需要获取可见子节点的节点</param>
/// <returns>可见子节点集合</returns>
public static List<TreeListNode> GetVisibleChildNodes(this TreeListNode node)
{
return GetVisibleChildNodes(node, n => 1 == 1);
}
希望本文所述方法对大家的C#程序设计能有所帮助!
您可能感兴趣的文章:
- DevExpress之饼状图突出(Explode)设置实例
- DevExpress之ChartControl实现饼状图百分比演示实例
- DevExpress之ChartControl创建Drill-Down样式的Title实例
- DevExpress之ChartControl实现时间轴实例
- DevExpress之ChartControl的SeriesTemplate实例
- DevExpress之ChartControl实现柱状图演示实例
- DevExpress之SplashScreen用法实例
- DevExpress实现为TextEdit设置水印文字的方法
- DevExpress之ChartControl用法实例总结
- DevExpress之TreeList用法实例总结
- DevExpress设置饼状图的Lable位置实例
相关文章
C#微信公众号开发之使用MessageHandler简化消息处理流程
这篇文章介绍了C#微信公众号开发之使用MessageHandler简化消息处理流程,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2022-06-06


最新评论