27.06.2005, 10:11 | #1 |
Участник
|
Дизайн диалога: размещение контролов в несколько столбцов.
Есть класс, наследник от RunBaseReport.
Хочется, чтобы контролы в диалоге выводились в 2 столбца. Пытаюсь действовать так (в методе dialog()): PHP код:
|
|
27.06.2005, 10:31 | #2 |
Administrator
|
Посмотрите форму Dialog. Она используется для стандартных диалогов.
Дело в том, что все контролы добавляются не непосредственно в форму, а в группу DialogStartGrp. Вернее, сначала в нее, а потом в создаваемые группы. Получить ссылку на ту группу, в которую сейчас добавляются контролы можно с помощью метода dialog.curFormGroup(). Количество колонок надо изменять для этой группы (по умолчанию для объекта FormGroupControl установлено значение Columns = 1).
__________________
Not registered yet? Register here! Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me |
|
27.06.2005, 10:48 | #3 |
Участник
|
Thanks
|
|
29.06.2005, 19:49 | #4 |
Участник
|
Хм. А как быть с трехзвенкой? Класс вызывается на сервере и вместо formGroupControls используется DialogFormGroup в котором естественно columns нет.
Версия Axapta - 2.5 SP5 |
|
29.06.2005, 19:51 | #5 |
Участник
|
Решил вопрос по другому.
Явно создаю фиктивную пустую группу, указываю у нее количество колонок, а затем распихиваю по ней реальные группы. |
|
30.06.2005, 10:27 | #6 |
Administrator
|
К сожалению, нет под рукой 2.5.
В 3.0 вроде бы всегда возвращается FormGroupControl или FormBuildGroupControl. Впрочем, у DialogGroup в 3.0 есть метод columns. Вообще-то, Ваш способ ничем не хуже, по-моему.
__________________
Not registered yet? Register here! Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me |
|
30.06.2005, 12:03 | #7 |
Участник
|
В 3.0 в случае создания диалога на сервере функция curFormBuildGroup которая вызывается из curFormGroup возвращает объект типа FormContainerControlAble в котором есть columns, а в 2.5 возвращается FormGroupControlInt в котором columns нет.
Другой вопрос - зачем нужно было вызывать диалог на сервере (не стандартный функционал) |
|