WinForm的控件 CheckBox 显示隐藏密码 TextBox恢复IsPasswordChar 默认值、取消密码框设置

//显示密码,状态事件处理 

private void skinCheckBoxShowPwd_CheckedChanged(object sender, EventArgs e)
        {
            if (skinCheckBoxShowPwd.Checked)
            {
                textBoxPwd.IsSystemPasswordChar = false;
                textBoxPwd.IsPasswordChat = default(char);
            } else
            {
                textBoxPwd.IsSystemPasswordChar = true; 
            }
        }

运行结果:

WinForm中TextBox控件的PasswordChar属性默认是没有设置的或者说没有开启密码模式,当设置了该属性之后就会开启密码模式,输入的内容以设置的该属性的值来显示。那么该如何取消PasswordChar的设置呢?归纳起来有三种方法,其本质都是把PasswordChar的值赋值为默认值,赋值为默认值后就会按照正常文本进行显示。三种方法代码如下。

this.textBox1.PasswordChar = new char();
 
this.textBox1.PasswordChar = '\0';
 
this.textBox1.PasswordChar = default(char);

这种方法分别用了三种赋值方式,char是值类型,同时是结构体类型。使用new char()得到的是一个结构体实例,同时会得到默认值;‘\0’是char类型的结尾值,任何一个char类型的变量的值都是以它为结尾,在存储中占一bit(位);default关键字,此关键字对于引用类型会返回 null,对于数值类型会返回零。 对于结构,此关键字将返回初始化为零或 null 的每个结构成员,具体取决于这些结构是值类型还是引用类型。对于可以为 null 的值类型,默认返回 System.Nullable,它像任何结构一样初始化。那么使用default关键字得到的就是char类型的默认值。 

猜你喜欢

转载自blog.csdn.net/jasonhongcn/article/details/85231188