У меня есть расширение этой задачи - добавление на форму "отвязанных" контролов по фин. аналитикам. Вариант с добавлением всех и последующим скрытием не интересен, т.к. заранее не известно, сколько аналитик будет.
Делаю так:
X++:
DictEnum DictEnum = new DictEnum(enumnum(SysDimension));
FormBuildDesign formBuilddesign = form.design();
FormBuildGroupControl formBuildGroupControl;
FormStringControl c;
int i;
;
if (dictEnum){
for (i=0; i<dictEnum.values(); i++){
c = DimensionList.addControl(FormControlType::String,strfmt("_%1",dictEnum.index2Symbol(i)));
c.extendedDataType(global::extendedTypeName2Id(strfmt("Dimension[%1]",i)));
c.showLabel(true);
c.label(dictEnum.index2Name(i));
c.lookupButton(2);
}
}
Элементы появляются, но выпадающие списки не работают, т.е. тип не подцепляется. Не делать showlabel, label и lookupbutton пробовал, получается простое текстовое поле, что еще раз подтверждает, что тип не подхватывается.
Не подскажете, в чем дело?