Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
ASP.NET 1.0/1.1
Disabilitare controlli
martedì 21 dicembre 2004 - 17.07
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
mon78
Profilo
| Junior Member
167
messaggi | Data Invio:
mar 21 dic 2004 - 17:07
Ciao ho 1 problema: ho una web form con alcuni web control; quando l'utente accede, egli può accedere in sola lettura o in lettura/modifica; se accede in lettura egli non può modificare nulla; dovrei disabilitare uno ad uno tutti i controlli da codice, o c'è qualke modo per disabilitare tutta la pagina?Grazie mille.
Brainkiller
Profilo
| Guru
7.999
messaggi | Data Invio:
mar 21 dic 2004 - 21:50
No una pagina web è una cosa un po' diversa da una applicazione standard a finestra.
Per disabilitare textbox o pulsanti puoi utilizzare un Javascript che fa una foreach su ogni controllo e ove possibile lo disabilità, oppure fare la stessa cosa server side facendo un post back e cambiando lo stato enabled a false.
ciao
david
mon78
Profilo
| Junior Member
167
messaggi | Data Invio:
mer 22 dic 2004 - 12:10
Grazie, ma il foreach in Javascript si può fare su ogni controllo di tipo server?C'è qualke riferimento a proposito, poikè nn sono esperta in javascript?Se invece devo disabilitare i controlli server, per ognuno devo porre Enabled=False? Grazie
cnnmax
Profilo
| Junior Member
99
messaggi | Data Invio:
mer 22 dic 2004 - 16:10
Ciao. Io ho fatto così
Mi leggo tutti i controlli dela pagina e se è un controllo che devo rendere readonly lo setto.
Codice in VB ma penso valga anche in c#
For Each oCtlChild In Page.Controls
' Si verifica il tipo di ogetto
if oCtlChild è quello che mi interessa Then
oCtlChild.Readonly = True
end if
Next
In C# si dovrebbe scrivere così :
foreach (System.Web.UI.Control oChildControl in Page.Controls)
{
oCtlChild.Readonly = true;
}
Ciao ;-)
mon78
Profilo
| Junior Member
167
messaggi | Data Invio:
gio 23 dic 2004 - 09:52
Grazie, ma il problema è che mi esce l'errore System.Web.UI.Control non contiene una definizione per ReadOnly. Nn so ke fare.
cnnmax
Profilo
| Junior Member
99
messaggi | Data Invio:
gio 23 dic 2004 - 12:07
Infatti non tutti i controlli hanno la proprietà readOnly, devi testare se l'oggetto che leggi nel foreach ha la proprietà che ti interessa.
In VB
' oCampo è l'oggetto che stai leggendo
Dim props As System.ComponentModel.PropertyDescriptorCollection
props = System.ComponentModel.TypeDescriptor.GetProperties(oCampo)
For Each oProp As System.ComponentModel.PropertyDescriptor In props
If oProp.Name = ""ReadOnly Then
oCampo.ReadOnly = True
Exit For
End If
Next
Ciao
Torna su
Stanze Forum
Elenco Threads
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 !