none
Сохранение динамически созданных элементов на странице при взаимодействии с ними. RRS feed

  • Вопрос

  • Здравствуйте!

    Задачи такая. Есть класс в который передается одномерный массив строк, и в зависимости от количества значений этих строк, в конструкторе класса динамически создается нужное количество TextBox'ов. И как результат отдает объект Panel c определенным количеством TextBox. Соответственно это действие создается при нажатии на кнопку. Формируются поля в них нужно вводить значения, но когда нажимаешь на другую кнопку которая должна извлечь все значения из всех существующих TextBox эти поля повторно не строятся.  Как сделать так что бы эти поля были сохранены со своими значениями которые были введены пользователем, и соответственно можно было по ним пройтись и собрать значения? Засунуть постройку в Page_Load не вариант. При использовании к примеру GridView и запихиванием в него значений из базы по средствам DataBind(); Таблица сохраняется при нажатии на любые кнопки на странице, мне нужно что бы мои TextBox так же сохраняли свое состояние.

    Кто-нибудь помогите! Спасибо.


    • Изменено Ercheph 22 апреля 2014 г. 7:47
    22 апреля 2014 г. 7:46

Ответы

  • "но когда нажимаешь на другую кнопку которая должна извлечь все значения из всех существующих TextBox эти поля повторно не строятся." -они не строятся или вы всё-таки не можете достучаться до них. Если проблема в том, что нужно достучаться до динамически зозданных контролов, то можно использовать FindControl() для нахождения их в родительском контейнере.

    "Есть класс в который передается одномерный массив строк, и в зависимости от количества значений этих строк, в конструкторе класса динамически создается нужное количество TextBox'ов" - весьма сомнительный подход. Всю логику по манипуляции контролов лучше всего помещать в код страницы, а не выносить его в отдельный класс, если конечно это не классс контрола.

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


    Сделаем содержимое сообщества лучше, вместе!

    • Предложено в качестве ответа YatajgaEditor 26 апреля 2014 г. 11:44
    • Помечено в качестве ответа YatajgaEditor 29 апреля 2014 г. 16:05
    23 апреля 2014 г. 5:35
    Модератор