demouser743 Ответов: 3

Как удалить все дочерние узлы, кроме корневого узла


Я хотел бы удалить все дочерние узлы, кроме корневого узла.

Предположим, что мой treeview выглядит следующим образом

Корень
|->ребенок
|-> ребенок
|->ребенок

Я хотел бы удалить все дочерние и наконец я хотел бы отобразить Root без дочерних узлов любая идея пожалуйста

3 Ответов

Рейтинг:
20

E.F. Nijboer

foreach(TreeNode node in myTreeview.Nodes)
{
   node.Nodes.Clear;
}


Удачи вам!


demouser743

Спасибо :)

amiraziz

и конечно же :
Clear(); это правильно .

Рейтинг:
0

Marc A. Brown

Я считаю, что вам нужно получить экземпляр "корневого" TreeNode, а затем очистить его свойство Nodes.


Рейтинг:
0

Member 13982644

TreeView1.Nodes[0].ChildNodes.RemoveAt(0);
TreeView1.Nodes[0].ChildNodes.RemoveAt(1);
TreeView1.Nodes[0].ChildNodes.RemoveAt(2);


используйте это для положения дочернего узла treeview


Richard Deeming

Помимо того, что этот вопрос уже решен, ваше решение неверно:

* Если существует пять или более дочерних узлов, ваш код удалит узлы 0, 2, и 5, покидающий 1, 3, и 6+ невредимый.

* Если существует менее пяти дочерних узлов, ваш код выдаст исключение.