в контроле есть коллекция Nodes, в которой содержаться все узлы на всех подуровнях.
Каждый элемент коллекции Nodes имеет: Root - корневой нод для узла, Parent - родительский нод для узла, FirstSibling, LastSibling - первый и последний ноды на том же уровне, Next, Previous - следующий и предыдущий ноды на том же уровне, Child - "дите" нода (первый нод на уровне ниже).
У коллекции Nodes есть метод Add([Relative], [Relationship], [Key], [Text], [Image], [SelectedImage]). Иерархией управляют Relative и Relationship. Relative - это нод, относительно которого будет происходить добовление узла. Relationship - это отношение, с которым будет добавлен узел (корневой, Relative игнорируется, "дите" относительно Relative, первый на уровне относительно Relative, последний на уровне относительно Relative, предыдущий на уровне относительно Relative, следующий на уровне относительно Relative).
Пример для такой структуры:
- Код: Выделить всё
+ 1
|
+--2
| |
| +--21
| |
| +--22
|
+--3
- Код: Выделить всё
With tvwDemo.Nodes
.Add(RelationShip := tvwRoot, Key := "1", Text := "1"
.Add(RelationShip := tvwRoot, Key := "2", Text := "2"
.Add(RelationShip := tvwRoot, Key := "3", Text := "3"
.Add(Relation := .Nodes("2"), RelationShip := tvwChild, Key := "21", Text := "21"
.Add(Relation := .Nodes("2"), RelationShip := tvwChild, Key := "22", Text := "22"
End With
Lasciate ogni speranza, voi ch'entrate.