24.08.2021, 07:22 | #1 |
Участник
|
Ax2012, итерация контролов на форме с учетом персонализации
Коллеги, вот такой вопрос.
Есть форма, хочу перебрать контролы и, скажем, поменять метку. Перебор реализован, например таким рекурсивным методом, который первый раз вызывается без параметров в .init() формы перед super(). X++: public void setControls(FormBuildControl _control = null) { int ctrlCount; int ctrlIdx; FormBuildControl fbc; if (_control) { ctrlCount = _control.controlCount(); for (ctrlIdx = 1; ctrlIdx <= ctrlcount; ctrlidx++) { fbc = _control.controlNum(ctrlIdx); element.setlabel(fbc); if (fbc.iscontainer() && fbc.controlcount()) { element.setcontrols(fbc); } } } else { ctrlcount = element.form().design().controlCount(); for (ctrlIdx = 1; ctrlIdx <= ctrlcount; ctrlidx++) { fbc = element.form().design().controlNum(ctrlIdx); element.setlabel(fbc); if (fbc.iscontainer() && fbc.controlcount()) { element.setcontrols(fbc); } } } } Для стандартных контролов все работает ОК. Но если я добавлю на форме поле через персонализацию - то для него не срабатывает. Как можно в рантайме к этим полям обратиться? Ну, скажем, в персонализацию я, наверно, могу через параметры пользователя залезть, а как из неё получить конкретный контрол на форме как объект? |
|
Теги |
ax2012, form, form control, form design, formbuildcontrol, formcontrol |
|
|