Не удается найти динамические элементы управления в сетке данных при обратной передаче - PullRequest
0 голосов
/ 14 октября 2008

Используя .NET 1.1, у меня есть DataGrid, который содержит три столбца для каждой строки.

В первой строке есть метка с текстом.

В строке три всегда будут две радиокнопки и два флажка, которые находятся на HTML-стороне страницы.

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

На странице есть кнопка, и когда пользователь нажимает кнопку, мне нужно обновить источник DataGrid (мой DataTable) новыми значениями из пользовательского ввода.

Проблема в том, что DataGrid теряет динамически сгенерированные элементы управления в PostBack. Я могу пройтись по каждому элементу в DataGrid и получить доступ к переключателям и флажкам, но текстовых полей там нет.

Есть идеи?

Ответы [ 2 ]

3 голосов
/ 14 октября 2008

Помните: каждый раз, когда происходит обратная передача, вы работаете с новым экземпляром вашего класса страниц. Динамические элементы управления, добавленные на страницу во время предыдущей обратной передачи, попадали в сборщик мусора, как только страница этой обратной передачи отображалась в браузере вместе с остальной частью этого экземпляра страницы. Вам необходимо заново создавать динамические элементы управления на каждом постбеке.

0 голосов
/ 14 октября 2008

вы должны восстановить элементы управления. Вы должны иметь возможность получить их значения из объекта http-запроса

...