Campo password

martedì 16 settembre 2003 - 18.31

050782 Profilo | Junior Member

Se da codice imposto il testo da inserire in una textbox, se questa ha come TextMode = Password, non mi visualizza nulla... HELP ME

Brainkiller Profilo | Guru

Ciao,
l'ho appena fatto e funziona.
Allora oltre a settare il tipo di Textbox a Password devi anche inserire nel campo PasswordChar un carattere esempio l'asterisco * che va a sostituire i caratteri della password.
Poi da dentro l'applicazione la puoi settare normalmente con nomecampo.Password="ciao"

Ciao
David De Giacomi

Admin Profilo | Junior Member

Ciao 050782... ti riferisci ad una TextBox su una web form o su una windows form?

La proprietà di cui parlava David è presente nel controllo per le windows form, e non per il webcontrol :-)

Suppongo che invece tu ti riferisca al controllo web TextBox... visto che siamo nel forum di ASP.NET.

Bene in questo caso, posso confermarti che il comportamento che hai notato è del tutto normale.

Il webcontrol TextBox, non renderizza il valore impostato tramite la proprietà Text, se il TextMode è impostato su Password... questo perchè visualizzare in chiaro la password e mandarla sul web non è una bella cosa... sì, perchè anche se non è visibile direttamente dall'utente, in quanto gli vengono visualizzati gli asterischi, in realtà visualizzando il source html dell'output generato, si andrebbe a leggere cmq la password in chiaro.

Questo è il motivo per cui Microsoft ha scelto di non fare renderizzare il testo della textbox, quando impostata su Password.

Ora... c'è un modo abbastanza semplice per aggirare il problema, e forzare la visualizzazione della password.
Ecco come:

anzichè scrivere:
myTextBox.Text = "ciao"
scriverò:
myTextBox.Attributes("value") = "ciao"

Questo produrrà lo stesso identico effetto che si sarebbe ottenuto impostando la proprietà text.

Spero di essere stato chiaro, e di aver risposto correttamente alla tua domanda.

Ciao

Stefano Giannone [MCP .NET]

050782 Profilo | Junior Member

Ti ringrazio, ma ottengo esattamente lo stesso risultato, cioè un campo vuoto!
Cmq hai ragione, sto parlando di una WebForm

050782 Profilo | Junior Member

non faccio nulla di particolare, solo:
txtMioCampo.text = "valore"

se la proprietà textMode di txtMioCampo è SingleLine va tutto bene
se invece textMode = Password non mi scrive nulla

Admin Profilo | Junior Member

per coach:
il problema non sta nel recuperare il valore immesso dall'utente in un campo password... ma appunto nel settarlo da codice tramite la proprietà .Text

Avevo già provato a suo tempo questa cosa... cmq per sicurezza l'ho riprovata. Ecco il mio codice:

1) NON FUNZIONA, non viene renderizzato il value, e quindi nemmeno gli asterischi nel campo password
txtProvaPass.Text = "ciao";
txtProvaPass.TextMode = TextBoxMode.Password;

2) FUNZIONA, viene renderizzato il value, e quindi gli asterischi del campo password
txtProvaPass.Attributes["value"] = "ciao";
txtProvaPass.TextMode = TextBoxMode.Password;

Il motivo è quello che ho spiegato nel precedente post.
Provare per credere.

Ciao

Stefano Giannone [MCP .NET]

Admin Profilo | Junior Member

è merito di zio Anakrino http://www.saurik.com/net/exemplar/ ;-)

E' un disassembler, ti fa vedere il codice degli assembly. Mi piace vedere cosa c'è sotto ;-)

Ciao!

Stefano Giannone [MCP .NET]

Admin Profilo | Junior Member

Beh, più o meno...
Anakrino è lo strumento... poi ovviamente devi sapere sfruttarlo e sapere quindi dove andare a guardare... ;-)

Ciao !

Stefano Giannone [MCP .NET]
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