Winform的TextBox实现明文和密文的切换

来源:互联网 发布:石家庄光耀网络 编辑:程序博客网 时间:2024/06/02 13:38

Winform只需要将TextBox的PasswordChar属性设置为一个特殊字符,即可用于输入密码。但是,当用户输入了错误的密码时,删除所有的输入,再次重新输入就会显得有点麻烦,而且可能还会输错。因此,需要提供一种方式供用户查看自己输入的内容到底是什么。比如,密码框的右边有一个复选框,当勾选该复选框时就显示用户的输入(明文),否则显示为密码;或者,密码框的右侧有一个类似眼睛的图标,当鼠标停留在该图标上就显示明文。

       本博文介绍如何使用复选框,实现明文和密文之间的切换。这其实就是编写CheckBox的CheckedChanged事件。第二种方式也很好实现,只要编写MouseEnter事件和MouseLeave事件即可。

1. 将用于输入密码的TextBox的PasswordChar属性设为*,这样用户输入的密码就会用星号代替。当然,也可以将该属性设置为其它字符。

2. 编写CheckBox的CheckedChanged事件:

[csharp] view plain copy
 在CODE上查看代码片派生到我的代码片
  1. private void checkBox1_CheckedChanged(object sender, EventArgs e)  
  2. {  
  3.     if(checkBox1.Checked)  
  4.     {  
  5.         //复选框被勾选,明文显示  
  6.         textBox2.PasswordChar = new char();  
  7.     }  
  8.     else  
  9.     {  
  10.         //复选框被取消勾选,密文显示  
  11.         textBox2.PasswordChar = '*';  
  12.     }  
  13. }  
效果图:


0 0