OnCheckToAddElem(Sender: Object; Args: IMetabaseTreeNodeSpecialEventArgs);
Sender. Параметр, возвращающий компонент, сгенерировавший событие;
Args. Параметр, позволяющий определить параметры события.
Событие OnCheckToAddElem наступает при добавлении элементов в дерево.
Событие наступает во время построения дерева для каждого элемента, отображаемого в дереве. В отличии от события MetabaseTreeList.OnIsBrowseableElem, событие OnCheckToAddElem также наступает для любых папок и объектов-контейнеров.
В свойстве IMetabaseTreeNodeSpecialEventArgs.Node аргумента события можно получить текущий элемент, для которого сгенерировано событие. Если свойству IMetabaseTreeNodeSpecialEventArgs.Special аргумента события установить значение True, то текущий элемент IMetabaseTreeNodeSpecialEventArgs.Node будет отображаться в дереве компонента. При установке свойству IMetabaseTreeNodeSpecialEventArgs.Special значения False элемент будет скрыт.
Для выполнения примера предполагается наличие формы и расположенного на ней компонента MetabaseTreeList. Указанная ниже процедура является обработчиком события OnCheckToAddElem.
Sub MetabaseTreeList1OnCheckToAddElem(Sender: Object; Args: IMetabaseTreeNodeSpecialEventArgs);
Var
s: String;
Begin
s := Args.Node.ObjectDescriptor.Id;
If s.IndexOf("SYSTEM") <> -1 Then
Args.Special := False;
End If;
End Sub MetabaseTreeList1OnCheckToAddElem;
После запуска формы в дереве элементов компонента не будут отображаться объекты, содержащие в своём идентификаторе «SYSTEM». Скрыты будут как объекты репозитория, так и папки и объекты-контейнеры.
См. также: