|
![]() |
#1 |
Участник
|
В подтверждение слов Ivan пост от vallys в теме Динамическое создание DataSource на форме, и добавление элементов дизайна.
Цитата:
Сообщение от vallys
![]() Как-то потребовалось создавать диалоги с источниками данных и гридами. В качестве альтернативы созданию собственных форм для каждого случая, была использована одна собственная диалоговая форма (можно модифицировать стандартную форму Dialog) с заранее созданными искуственными источниками данных, которые позднее переопредилялись в RunBase.dialog(...). Динамически создавать источники данных в стандартной форме не получилось по предпологаемой причине, описанной ниже. Далее имхо.
Представьте, что экземпляры объектов, таких как DataSource, DataSource_DS, DataSource_Q, DataSource_QR, и экземпляры контролов с AutoDeclaration = Yes, хранятся некоторым списком. Сами переменные, используемые в коде формы, имеют смысл ссылок на позицию (адрес) в этом списке. При чем экземпляры объектов для источников данных хранятся перед контролами. При добавлении нового источника данных у формы "создаются новые" экземпляры объектов, которые сдвигают контролы в списке. Естественно указатели на контролы становятся неверными, поэтому и возникают ошибки при обращении к ним. В вашем случае - при обращении к StaticText. Решение: либо добавить нужное количество источников данных на форму заранее в репозитарий, либо, если первое не возможно, как минимум отказаться от использования контролов с AutoDeclaration = Yes (данным путем не ходил, возможно потребуется ввести и другие ограничения) |
|
|
За это сообщение автора поблагодарили: Ar (1). |
Теги |
autodatagroup, autodeclaration, datasource, run-time, добавление группы полей, как правильно, форма |
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|