Files
ColorControl/Shared/Forms/TreeNodeBuilder.cs
T

29 lines
687 B
C#

using ColorControl.Shared.Common;
using static ColorControl.Shared.Common.NestedItemsBuilder;
namespace ColorControl.Shared.Forms;
public class TreeNodeBuilder
{
public static TreeNode CreateTree(object obj, string text)
{
var nestedItem = NestedItemsBuilder.CreateTree(obj, text);
return BuildTree(nestedItem);
}
private static TreeNode BuildTree(NestedItem nestedItem)
{
var treeNode = new TreeNode
{
Text = nestedItem.Value,
Name = nestedItem.Name
};
var nodes = nestedItem.NestedItems.Select(BuildTree);
treeNode.Nodes.AddRange([.. nodes]);
return treeNode;
}
}