Clear;
Clear();
Метод Clear очищает коллекцию элементов дерева визуализатора.
Для выполнения примера предполагается наличие в репозитории экспресс-отчета с идентификатором «EXPRESS». Модуль, в котором размещается пример, должен иметь ссылки на системные сборки Express, Metabase и Visualizators. Указанная процедура должна вызываться из точки входа Main.
Получим корневой элемент пузырькового дерева и его дочерних элементов, добавим элемент, а затем удалим все элементы:
Sub UserProc;
Var
Metabase: IMetabase; // Метабаза
EaxAnalyzer: IEaxAnalyzer; // Экспресс-отчёт
BubbleTree: IVZBubbleTree; // Пузырьковое дерево
RootItem: IVZTreeItem; // Корневой элемент дерева
Model: IVZTreeModel; // Модель дерева
Items: IVZTreeItems; // Дочерние элементы
Item: IVZTreeItem; // Элемент дерева
Begin
// Получим объект метабазы
Metabase := MetabaseClass.Active;
// Откроем экспресс-отчёт
EaxAnalyzer := Metabase.ItemById("EXPRESS").Edit As IEaxAnalyzer;
// Получим пузырьковое дерево
BubbleTree := EaxAnalyzer.BubbleTree.BubbleTree;
// Получим модель дерева
Model := BubbleTree.Model;
// Получим корневой элемент пузырькового дерева
RootItem := Model.RootItem;
Debug.WriteLine("Количество элементов до добавления: " + RootItem.Items.Count.ToString);
// Добавим элемент
Items := RootItem.Items;
Item := Items.Item(RootItem.Items.Count-1);
RootItem.Items.Add(Item);
Debug.WriteLine("Количество элементов после добавления: " + RootItem.Items.Count.ToString);
Debug.WriteLine("Количество элементов до удаления: " + RootItem.Items.Count.ToString);
// Очистим все элементы в коллекции
RootItem.Items.Clear;
Debug.WriteLine("Количество элементов после удаления: " + RootItem.Items.Count.ToString);
End Sub UserProc;
В результате выполнения примера были удалены все дочерние элементы корневого элемента пузырькового дерева, о чём свидетельствует уведомления в консоли среды разработки:
Количество элементов до добавления: 1
Количество элементов после добавления: 2
Количество элементов до удаления: 2
Количество элементов после удаления: 0
Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore.
Imports Prognoz.Platform.Interop.Metabase;
Imports Prognoz.Platform.Interop.Express;
Imports Prognoz.Platform.Interop.Visualizators;
...
Public Shared Sub Main(Params: StartParams);
Var
Metabase: IMetabase; // Метабаза
EaxAnalyzer: IEaxAnalyzer; // Экспресс-отчёт
BubbleTree: IVZBubbleTree; // Пузырьковое дерево
RootItem: IVZTreeItem; // Корневой элемент дерева
Model: IVZTreeModel; // Модель дерева
Items: IVZTreeItems; // Дочерние элементы
Item: IVZTreeItem; // Элемент дерева
Begin
// Получим объект метабазы
Metabase := Params.Metabase;
// Откроем экспресс-отчёт
EaxAnalyzer := Metabase.ItemById["EXPRESS"].Edit() As IEaxAnalyzer;
// Получим пузырьковое дерево
BubbleTree := EaxAnalyzer.BubbleTree.BubbleTree;
// Получим модель дерева
Model := BubbleTree.Model;
// Получим корневой элемент пузырькового дерева
RootItem := Model.RootItem;
System.Diagnostics.Debug.WriteLine("Количество элементов до добавления: " + RootItem.Items.Count.ToString());
// Добавим элемент
Items := RootItem.Items;
Item := Items.Item[RootItem.Items.Count-1];
RootItem.Items.Add(Item);
System.Diagnostics.Debug.WriteLine("Количество элементов после добавления: " + RootItem.Items.Count.ToString());
System.Diagnostics.Debug.WriteLine("Количество элементов до удаления: " + RootItem.Items.Count.ToString());
// Очистим все элементы в коллекции
RootItem.Items.Clear();
System.Diagnostics.Debug.WriteLine("Количество элементов после удаления: " + RootItem.Items.Count.ToString());
End Sub;
См. также: