AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 27.06.2005, 10:11   #1  
malex is offline
malex
Участник
 
164 / 19 (1) ++
Регистрация: 10.08.2004
Адрес: Тверь, Москва
? Дизайн диалога: размещение контролов в несколько столбцов.
Есть класс, наследник от RunBaseReport.
Хочется, чтобы контролы в диалоге выводились в 2 столбца.
Пытаюсь действовать так (в методе dialog()):
PHP код:
    DialogRunbase dlg super();
    
FormBuildDesign dialogDesign;
    ;
    
dialogDesign dlg.formBuildDesign();
    
dialogDesign.columns(2);
    
// далее добавляем контролы 
Но видимо этого недостаточно.
Старый 27.06.2005, 10:31   #2  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
Посмотрите форму 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  
malex is offline
malex
Участник
 
164 / 19 (1) ++
Регистрация: 10.08.2004
Адрес: Тверь, Москва
Thanks
Старый 29.06.2005, 19:49   #4  
malex is offline
malex
Участник
 
164 / 19 (1) ++
Регистрация: 10.08.2004
Адрес: Тверь, Москва
Хм. А как быть с трехзвенкой? Класс вызывается на сервере и вместо formGroupControls используется DialogFormGroup в котором естественно columns нет.

Версия Axapta - 2.5 SP5
Старый 29.06.2005, 19:51   #5  
malex is offline
malex
Участник
 
164 / 19 (1) ++
Регистрация: 10.08.2004
Адрес: Тверь, Москва
Решил вопрос по другому.

Явно создаю фиктивную пустую группу, указываю у нее количество колонок, а затем распихиваю по ней реальные группы.
Старый 30.06.2005, 10:27   #6  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
К сожалению, нет под рукой 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  
malex is offline
malex
Участник
 
164 / 19 (1) ++
Регистрация: 10.08.2004
Адрес: Тверь, Москва
В 3.0 в случае создания диалога на сервере функция curFormBuildGroup которая вызывается из curFormGroup возвращает объект типа FormContainerControlAble в котором есть columns, а в 2.5 возвращается FormGroupControlInt в котором columns нет.
Другой вопрос - зачем нужно было вызывать диалог на сервере (не стандартный функционал)
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Использование формы в качестве диалога vs создание диалога программно Lucky13 DAX: Программирование 3 30.05.2008 13:09
Отчет SalesInvoice "несколько раз" в одном окне Delfins DAX: Программирование 2 16.10.2006 14:33
Получение значений из диалога Antant DAX: Программирование 10 05.06.2006 15:17
названия контролов в отчете. krmik DAX: Программирование 1 06.07.2005 15:54
дизайн отчета (как сделать его с разделителями между столбцами?) puz DAX: Программирование 7 02.09.2003 08:50

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 19:00.