>Salve a tutti.
Ciao!
>Ho la necessità di abilitare/disabilitare tutti gli elementi
>presenti in una pagina della mia applicazione sviluppata in asp.net
>2.0
>
>Poichè sono parecchi oggetti, non penso sia una buona idea abilitarli/disabilitarli
>elencandoli nella pagina .vb e valorizzando la proprietà enabled
>a True o False a seconda dei casi.
>Pensavo dunque a sfruttare la funzionalità del For Each ....
>next, per poterli abilitare/disabilitare tutti insieme.
Sono tutti allo stesso livello? perchè allora basta fare un foreach simile al tuo dove cambiano i tipi di dato. Però, prima di pensare ad un ciclo. Hai pensato che potresti semplicemente fare un div, un pannello o comunque un container, per poi disabilitare solo quello?
Il ciclo, se tutti gli elementi sono allo stesso livello e non sono dentro altri controlli (altrimenti devi ciclare ricorsivamente, e te lo sconsiglio al massimo), potrebbe essere il seguente:
For Each w As web.UI.Control in Page.Controls
' OPERAZIONI
Next
fai attenzione perchè non hai la proprietà enabled, devi castare in base al tipo e poi, eventualmente, impostare l'abilitazione del controllo, ad esempio:
For Each w As Web.UI.Control In Me.Controls
If TypeOf (w) Is TextBox Then
CType(w, TextBox).Enabled = False
End If
If TypeOf (w) Is DropDownList Then
CType(w, DropDownList).Enabled = False
End If
'...
Next
Cercherei comunque di rimanere sulla soluzione del container, magari un bel Panel
>Grazie anticipatamente per le eventuali risposte.
Di nulla!
Alx81 =)
http://blogs.dotnethell.it/suxstellino