Мои Уведомления
Привет, !
Мой Аккаунт Мои Финансы Мои Подписки Мои Настройки Выход
Руководство API скрипты

TreeView.BuildRows

Объявление

protected IList BuildRows(IMGUI.Controls.TreeViewItem root);

Параметры

root Корневой элемент, созданный в методе BuildRoot.

Возвращает

IList Список строк, отображаемый в TreeView. Позже к ним можно получить доступ с помощью GetRows().

Описание

Переопределите этот метод, чтобы управлять созданием строк.

Этот метод вызывается при вызове Reload и каждый раз, когда элементы разворачиваются или сворачиваются. Реализация BuildRows по умолчанию обеспечивает кэширование расширенных строк на основе полного дерева и расширенного состояния элементов

.

Для очень больших наборов данных или данных, которые часто меняются, может быть желательно создавать только строки TreeView, а не полное дерево. В этой ситуации переопределите этот метод, чтобы построить строки вручную. Если встречается свернутый родитель, потомки этого родителя можно опустить (поскольку они не видны). Установите дочерние элементы этого элемента с помощью метода CreateChildListForCollapsedParent().

При использовании этого подхода BuildRoot следует просто создать корневой элемент TreeViewItem (а не полное дерево). Вам нужно будет добавить собственного делегата в getNewSelectionOverride, чтобы обрабатывать изменения выбора. Также не забудьте переопределить GetAncestors() и GetDescendantsThatHaveChildren() и использовать данные модели для извлечения этой информации, иначе кадрирование и расширение поддеревьев не удастся.

При построении строк вручную не забудьте использовать строку поиска TreeView для фильтрации элементов.

Смотрите так же: BuildRoot, SetupParentsAndChildrenFromDepths, SetupDepthsFromParentsAndChildren, TreeViewItem.

Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
API скрипты 2021.3