Come posso smascherare la casella di testo della password e mascherarla di nuovo con la password?

Come può la casella di testo password impostata su:

password_txtBox.PasswordChar ="*" 

da smascherare (dalla casella di controllo) e quindi mascherare di nuovo
senza perdere la stringa all’interno della casella di testo

Basta impostare la proprietà su 0 (valore predefinito) per non mascherare i caratteri.

Fonte: http://msdn.microsoft.com/en-us/library/system.windows.forms.textbox.passwordchar.aspx

Per winforms :

 private void checkBoxShowPassword_CheckedChanged(object sender, EventArgs e) { textBoxPassword.PasswordChar = checkBoxShowPassword.Checked ? '\0' : '*'; } 

Se stai lavorando con interruttore a levetta quindi

 private void toggleSwitch1_Toggled(object sender, EventArgs e) { if (toggleSwitch1.IsOn) { string a= textBox2.Text; textBox2.PasswordChar = '\0'; } else { textBox2.PasswordChar = '*'; } } 

qui '\0' mostrerà la password archiviata in testo normale

txtPassword è la casella di testo Password, chkSeePassword è la casella di controllo Mostra password. Ora aggiungi del codice all’evento CheckedChanged della casella di controllo

 private void chkSeePassword_CheckedChanged(object sender, EventArgs e) { txtPassword.UseSystemPasswordChar = !chkSeePassword.Checked; } 

Uno dei metodi più semplici per mostrare e hide la password è utilizzando il pulsante di opzione nella casella di testo della password

Le proprietà del pulsante di scelta dovrebbero essere come:

 this.radioBtn_ShowHidePassword.AutoCheck = false; 

quindi l’attività di clic deve essere gestita manualmente, rendendola inversa rispetto allo stato presente nel suo evento “Click”

 private void radioBtn_ShowHidePassword_Click(object sender, EventArgs e) { radioBtn_ShowHidePassword.Checked = (! radioBtn_ShowHidePassword.Checked); } 

quindi finalmente il modo più semplice per mostrare e hide la password

 private void radioBtn_ShowHidePassword_CheckedChanged(object sender, EventArgs e) { txtBoxPassword.PasswordChar = radioBtn_ShowHidePassword.Checked ? '\0' : '*'; // here we can even include the code for changing the default picture of button to two different //representation like closed eye and opened eye which resembles Windows login } 

usa questo

 private void checkBox1_CheckedChanged(object sender, EventArgs e) { textBox2.PasswordChar = default(char); } 

La versione VB.Net è

 Private Sub checkBoxShowPassword_CheckedChanged(sender As Object, e As System.EventArgs) Handles checkBoxShowPassword.CheckedChanged textBoxPassword.PasswordChar = If(checkBoxShowPassword.Checked, ControlChars.NullChar, "*"C) End Sub 

o

 Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox1.CheckedChanged If CheckBox1.Checked Then Me.txt_password.PasswordChar = "*"c Else Me.txt_password.PasswordChar = ControlChars.NullChar End If End Sub