Когда создавать элементы управления динамически, чтобы при нажатии кнопки я мог сохранять их значения?

Я динамически создаю некоторые текстовые поля и пытаюсь получить их значения, когда нажимаю кнопку, но они исчезли. Я создаю текстовые поля (объявление, инициализация, добавление их в заполнитель) в другом событии кнопки нажатия. Что я должен изменить, чтобы иметь возможность читать их значения?


person Ahmad Farid    schedule 20.08.2009    source источник
comment
у вас есть пример кода, содержащий вашу проблему? обычно вы должны иметь доступ к объектам в своем классе из всех событий.   -  person Faizan S.    schedule 20.08.2009


Ответы (3)


Если вы будете создавать элементы управления на этапе Init (например, событие Init) для каждого запроса (например, как с обратной передачей, так и без нее), то они будут доступны и сохранят свое состояние.

person Dmytrii Nagirniak    schedule 20.08.2009
comment
что вы подразумеваете под созданием? какой из них ты имеешь в виду? (объявление, инициализация, добавление их в заполнитель) или все вместе? - person Ahmad Farid; 20.08.2009
comment
Чтобы сохранить состояние динамических элементов управления, они должны быть созданы (экземпляры и добавлены на страницу/заполнитель) в событии Init. - person Dmytrii Nagirniak; 21.08.2009

Может быть несколько причин, одна из которых - инициализация вашего элемента управления, выполняемая до обработчика событий. Это будет иметь место, если вы при обратной отправке инициализируете элементы управления в page_load. Обработчик события клика выполняется после запуска page_load

person Rune FS    schedule 20.08.2009

Как насчет получения значений с помощью простого Request.Form. Это должно работать независимо от того, как вы добавляете элементы управления. Опубликуйте какой-нибудь источник, чтобы мы могли видеть, что происходит. :)

person Jakob Gade    schedule 20.08.2009