GetSelectedMembers(FactorsOnly: Boolean; AddDimChildren: Boolean; AddOnlyChild: Boolean): IMetaMembersSet;
GetSelectedMembers(FactorsOnly: boolean; AddDimChildren: boolean; AddOnlyChild: boolean): Prognoz.Platform.Interop.Rds.MetaMembersSet;
FactorsOnly. Признак получения списка только выделенных показателей. True - возвращать только выделенные показатели; False - возвращать выделенные папки и показатели.
AddDimChildren. Признак рекурсивного добавления дочерних элементов. True - при выделении папки добавлять в коллекцию ее дочерние показатели; False - возвращать только фактически выделенные элементы.
AddOnlyChild. Признак добавления только дочерних элементов и исключения исходного элемента. True - исключать выделенный элемент (папку) и добавлять только дочерние элементы; False - возвращать только фактически выделенные элементы.
Метод GetSelectedMembers возвращает набор отмеченных в компоненте элементов в соответствии с указанными параметрами отбора.
Параметр AddDimChildren используется в сочетании с параметром AddOnlyChild. При установке параметрам значения True, если в компоненте отмечены какие-либо папки, то в результирующий набор метода попадут все дочерние показатели этих папок. При этом сами папки будут исключены из результирующего набора.
Для выполнения примера предполагается наличие формы, расположенной на ней кнопки с наименованием «Button1», компонента MetaAttributesBreadcrumb и компонента MetaAttributesTreeList с наименованием «MetaAttributesTreeList1». Компоненты настроены на работу с какой-либо базой данных временных рядов.
Sub Button1OnClick(Sender: Object; Args: IMouseEventArgs);
Var
MembersSet: IMetaMembersSet;
Member: IMetaMember;
Begin
MembersSet := MetaAttributesTreeList1.GetSelectedMembers(False, True, True);
MembersSet.Reset;
While Not MembersSet.Eof Do
Member := MembersSet.Current;
Debug.WriteLine(Member.Name);
MembersSet.Next;
End While;
End Sub Button1OnClick;
При нажатии на кнопку в консоль среды разработки будет выведен список элементов, выделенных в компоненте. Если выделены папки, то в список будут включены их дочерние элементы. Сами папки при этом из списка будут исключены.
Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore. Вместо компонентов Fore используйте их Fore.NET аналоги.
Imports Prognoz.Platform.Interop.Rds;
Private Sub button1_Click(sender: System.Object; e: System.EventArgs);
Var
MembersSet: IMetaMembersSet;
Member: IMetaMember;
Begin
MembersSet := MetaAttributesTreeListNet1.CtrlBox.GetSelectedMembers(False, True, True);
MembersSet.Reset();
While Not MembersSet.Eof() Do
Member := MembersSet.Current();
System.Diagnostics.Debug.WriteLine(Member.Name);
MembersSet.Next();
End While;
End Sub;
См. также: