Как составить список проверенных узлов TreeView в C#

Если для свойства CheckBoxes элемента управления TreeView установлено значение true, тогда элемент управления отображает поля, которые пользователь может проверить, чтобы выбрать узлы. В этом случае вам, вероятно, потребуется найти проверенные узлы TreeView в какой-то момент.

Странно, что элемент управления TreeView не предоставляет простой метод для поиска отмеченных узлов TreeView. Фактически, у него даже нет простого способа перечислить узлы элемента управления, чтобы вы могли видеть, какие из них проверены. Оба эти упущения кажутся странными. В конце концов, элемент управления ListBox предоставляет пять свойств, которые помогут вам определить, какие элементы выбраны: SelectedIndex, SelectedIndices, SelectedItem tt>, SelectedItems и SelectedValue.

Один из способов найти проверенные узлы TreeView - это рекурсивно сканировать через узлы дерева и найти их. Элемент TreeView имеет свойство Nodes. Это свойство имеет тип TreeNodeCollection и содержит узлы верхнего уровня элемента управления.

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

Чтобы перечислить каждый узел в дереве, вы можете написать метод, который перечисляет узлы внутри TreeNodeCollection и их потомков в дереве. В этом примере для создания списка отмеченных узлов TreeView используется следующий метод.

Метод принимает в качестве параметра список & lt; TreeNode & gt; где он разместит отмеченные узлы TreeView. Он также принимает в качестве параметра a TreeNodeCollection.

Метод проходит через узлы в коллекции. Он проверяет каждый узел, а затем рекурсивно вызывает себя, чтобы проверить дочерние узлы, хранящиеся в свойстве Nodes.

Следующий метод завершает вызов FindCheckedNodes для элемента управления TreeView.

Этот метод просто создает List & lt; TreeNode & gt; а затем вызывает метод FindCheckedNodes для коллекции Nodes элемента управления TreeView.

Когда вы нажимаете кнопку «Показать проверенную программу», она использует следующий код, чтобы получить список отмеченных узлов TreeView.

Источник: http://csharphelper.com/blog/2017/04/make-list-checked-treeview-nodes-c/

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)

Add a Comment

Ваш e-mail не будет опубликован. Обязательные поля помечены *