Для примера возьмем существующее на форме дерево с именем реквизита «Дерево», пусть в него надо добавить еще одну колонку с названием «Узел» тип строка. С динамическим добавлением элементов на управляемую форму можно разобраться на примере следующего алгоритма действий, все происходит на сервере:
- Получить значение реквизита — ДеревоЗначений
- Добавить колонку в дерево значений
- Добавить реквизит (колонку) дерева на форму (невидимая часть, справа в редакторе форм)
- Выгрузить дерево значений в реквизит формы
- Добавить на форму элемент колонку дерева (видимая часть, слева в редакторе форм)
Пример кода:
// 1. получаем дерево как програмный объект
ДеревоОбъект = РеквизитФормыВЗначение(«Дерево»);
// 2. добавляем колонку
ДеревоОбъект.Колонки.Добавить(«Узел», Новый ОписаниеТипов(«Строка»));
// 3. создаем РЕКВИЗИТ КОЛОНКИ (невидимая часть, справа в редакторе форм)
МассивДобавляемыхРеквизитов = Новый Массив;
// реквизит принадлежит дереву
МассивДобавляемыхРеквизитов.Добавить(Новый РеквизитФормы(«Узел», Новый ОписаниеТипов(«Строка»), «Дерево»));
// добавляем реквизит в форму (невидимая часть, справа в редакторе форм)
ИзменитьРеквизиты(МассивДобавляемыхРеквизитов);
// 4. заполняем дерево (реквизит формы) занчением
ЗначениеВРеквизитФормы(ДеревоОбъект, «Дерево»);
// 5. добавляем НА ФОРМУ (видимая часть, слева в редакторе форм)
// назовем ДеревоУзел, принадлежит элементу дерева, связан с добавленной колонкой «Узел»
НовыйЭлемент = Элементы.Добавить(«ДеревоУзел», Тип(«ПолеФормы»), Элементы.Дерево);
НовыйЭлемент.Вид = ВидПоляФормы.ПолеВвода;
НовыйЭлемент.ПутьКДанным = «Дерево.Узел»;
Если для списка или библиотеки настроена навигация для метаданных, на сайте SharePoint в левой части страницы отображается элемент управления «Дерево», в котором отображается иерархия папок и термины управляемых метаданных. Пользователи могут выбирать элементы дерева для фильтрации представления элементов на странице, что дает им возможность динамического отображения контента. Они также могут уточнять поиск, используя элемент управления