Ciclo su controlli form

venerdì 03 aprile 2009 - 11.57

valerik Profilo | Junior Member

Ciao,
ho una serie di dropdowlist all'interno di un form.

Come posso ciclare su tutti e riprenderne il valore?
La pagine e' all'interno di una masterpage.
Ho provato cosi':
foreach (Control c in Page.Controls) { foreach (Control childc in c.Controls) { if (childc is DropDownList) { if (((DropDownList)childc).SelectedValue == "0") { lblMessage.Text = "Campi obbligatori non completati"; } } } }

Ma non va.
Potete darmi una mano?
Grazie
valerik

Anonimo Profilo | Senior Member

Prova così:

foreach (Control c in Form.Controls) if (childc is DropDownList && (((DropDownList)childc).SelectedValue == "0") lblMessage.Text = "Campi obbligatori non completati";

ciao.

freeteo Profilo | Guru

Ciao,
se vuoi essere sicuro che vengano "spazzolati" tutti i controlli della pagina che vuoi, devi fare una ricorsione:
http://www.dotnethell.it/articles/FunzioniRicorsive.aspx
perchè potrebbero esserci pannelli, updatepanel, etc...insomma "contenitori" vari e quindi il tuo dropdown è dentro a qualcuno di questi...


Ciao.

Matteo Raumer
[MVP Visual C#]
http://blogs.dotnethell.it/freeteo
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-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5