Postback e creazione dinamica webcontrols

lunedì 27 febbraio 2006 - 15.09

fustaman Profilo | Junior Member

Sono nuovo alla programmazione asp.net, e ho dei problemi a capire come funziona il meccaniscmo di postback con i controlli dinamici.

Ho una pagina in cui ho posizionato una dropdownlist e un pannello, al cambiare del valore selezionato nella dropdownlist, mi connetto ad un webservice che poi mi restituisce una lista di item che devo far visualizzare come checkbox nel pannello.

Fino qui tutto bene, poi però ho bisogno che ad ogni cambio di stato di uno dei checkbox venga richiamato un metodo sul server (lo stesso metodo per tutti i checkbox), per ottenere questo uso il seguente codice:

for (int i = 0; i < items.Count; i++) {
CheckBox li = new CheckBox();
li.Text = items[i].SelectSingleNode("codice").InnerText;
li.Attributes.Add("value", items[i].SelectSingleNode("codice").InnerText);
li.CheckedChanged += new EventHandler(CambiaSelezioneItem);
li.AutoPostBack = true;
panel1.Controls.Add(li);
}

e poi ovviamente una funzione per la gestione dell'evento che si chiama CambiaSelezioneItem

Questo codice è posizionato sulla funzione richiamata al postback dovuto al cambio di valore della dropdownlist.

Il problema è che quando viene fatto il postback del checkbox, i checkbox appunto non vengono ricreati automaticamente, e di conseguenza non viene neanche eseguito il metodo CambiaSelezioneItem.

Mi sembra assurdo dover mettere la creazione di questi checkbox nel page_load con un if che me li faccia generare solo in determinati casi.
.NET non dovrebbe aver cambiato il paradigma della programmazione web portandolo ad una programmazione orientata agli eventi?

Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5