/ / Динамика контрол губи по пощата - c #, asp.net, постбак, повторител, страница на жизнения цикъл

Контролът на динамиката е загубен при постback - c #, asp.net, postback, repeater, life cycle

Този стар кестен отново.

Страницата ми е изградена по следния начин: Имам един dropdownlist, който е база данни на първо натоварване. Когато потребителят избира стойност от това, се извършва повторно поправяне, което след това регистрира контрола на повторителя.

Елементът на този контрол на рипитърсъдържа контрол на заместителя. В кода зад събитието ItemDataBound на повторителя добавям два динамични контрола към този заместител, скрито поле и квадратче за отметка.

Когато потребителят кликне върху бутона за запаметяване, тогава искамда итерират всички динамично създадени скрити полета и квадратчета за отметка и да определят техните стойности. Въпреки това, когато потребителят кликне върху бутона за запазване, тези контроли вече не съществуват, както е показано в проследяването на страницата.

Знам, че това е проблем с жизнения цикъл и статиитеВиждал съм, че това означава да използвате методите Init, за да създадете динамично контрола си, но не мога да направя така, защото моята страница работи, напр. контролът на рипитъра се появява и се свързва само след като е избрана стойност от падащия списък.

Какво трябва да направя, за да поддържам динамичните контроли чрез повторното отстъпление, причинено от натискането на бутона за запазване?

Отговори:

0 за отговор № 1

Проблемът е, когато натиснете бутона за запазваневероятно няма да свържете повторителя и контролите, които сте добавили по време на изпълнение в събитието ItemDataBound, вече не са налични (защото те вече не съществуват) Защо не добавите тези контроли в дизайна, използвайки функцията Eval за настройка на стойността на скритото поле?


0 за отговор № 2

Просто не ги създавате динамичнопромяна на селекцията на падащия набор видимост вярна или невярна за повторителя, който ще реши проблема ви.От пост назад трябва отново да създадете тези контрол, тъй като те са динамично създадени.