-
Notifications
You must be signed in to change notification settings - Fork 33
Expand file tree
/
Copy pathcls_treenode.cs
More file actions
41 lines (36 loc) · 1.12 KB
/
cls_treenode.cs
File metadata and controls
41 lines (36 loc) · 1.12 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
namespace SWD4CS
{
internal class cls_treenode : TreeNode
{
private cls_treenode[] itemNode = Array.Empty<cls_treenode>();
public cls_treenode(string nodeName)
{
this.Text = nodeName;
}
internal cls_treenode? Search(string name)
{
if (Text == name) { return this; }
foreach (var node in itemNode)
{
var result = node.Search(name);
if (result != null) { return result; }
}
return null;
}
internal void Add(string name, string className)
{
Array.Resize(ref itemNode, itemNode.Count() + 1);
if (className == "SplitContainer")
{
itemNode[^1] = new cls_treenode(name + ".Panel1");
Array.Resize(ref itemNode, itemNode.Count() + 1);
itemNode[^1] = new cls_treenode(name + ".Panel2");
}
else { itemNode[^1] = new cls_treenode(name); }
this.Nodes.Clear();
this.Nodes.AddRange(itemNode);
this.Expand();
}
}
}