JD2022-TU1/main/tools/framework/JD.WinFormExtensions/TreeViewExtensions.cs

38 lines
953 B
C#

using System.Collections.Generic;
using System.Windows.Forms;
namespace JD.WinFormExtensions
{
public static class TreeViewExtensions
{
#region Methods
public static IEnumerable<TreeNode> GetAllNodes(this TreeView treeView)
{
foreach (TreeNode treeNode in treeView.Nodes)
{
yield return treeNode;
foreach (TreeNode subNode in GetAllNodesFrom(treeNode))
{
yield return subNode;
}
}
}
public static IEnumerable<TreeNode> GetAllNodesFrom(TreeNode rootNode)
{
foreach (TreeNode treeNode in rootNode.Nodes)
{
yield return treeNode;
foreach (TreeNode subNode in GetAllNodesFrom(treeNode))
{
yield return subNode;
}
}
}
#endregion
}
}