当前位置: 代码迷 >> C# >> winform 密码框有关问题
  详细解决方案

winform 密码框有关问题

热度:45   发布时间:2016-05-05 03:40:46.0
winform 密码框问题
在登录页面 点击密码框前 里面有默认值是:请输入密码    
在点击后默认值去掉了  输入密码后用***号 显示
------解决思路----------------------
找下文本框的事件,里面应该有一个被点击或被输入后发生的事。。后面怎么做你应该知道了吧
------解决思路----------------------
引用:
输入后的找不到   被点击的就清除 用代码就可以了  我现在就卡在了 点击密码框输入后显示的不是*号

TextBox控件有个PasswordChar改为 * 就OK了 
------解决思路----------------------



建议直接在这个textbox上面放个label。  这个label.text=“请输入密码”
点击这个label  这个label visable=false
这个textbox  textchange事件写 texbox.text=string.empty 的时候  label显示。
------解决思路----------------------
建议你把这几个字单独放外面

你想实现这个效果,看起来是很炫,但是是把简单的问题搞复杂了

就是要这个效果的话,你必须按5楼说的,动态的去改PasswordChar 属性
并且在text_changed事件里要判断文本是不是空,是不是默认值

是空就设置成默认值,并且PasswordChar =''
如果PasswordChar 是空并且内容不是默认值,就设置为空并且PasswordChar ='*'
------解决思路----------------------
textbox没有焦点的时候把它的值设为“请输入密码”;获取到焦点的话,就是改成*,也就是PasswordChar属性
------解决思路----------------------
窗口设计器上给textBox的Text属性设置“请输入密码”

        private void textBox2_Enter(object sender, EventArgs e)
        {
            textBox2.Text = "";
        }

        private void textBox2_TextChanged(object sender, EventArgs e)
        {
            textBox2.PasswordChar = '*';
        }

------解决思路----------------------
引用:
窗口设计器上给textBox的Text属性设置“请输入密码”

        private void textBox2_Enter(object sender, EventArgs e)
        {
            textBox2.Text = "";
        }

        private void textBox2_TextChanged(object sender, EventArgs e)
        {
            textBox2.PasswordChar = '*';
        }

这样不对的
用户如果输入完密码,又全部删掉,你还得变回默认显示才行
------解决思路----------------------
引用:
Quote: 引用:

窗口设计器上给textBox的Text属性设置“请输入密码”

        private void textBox2_Enter(object sender, EventArgs e)
        {
            textBox2.Text = "";
        }

        private void textBox2_TextChanged(object sender, EventArgs e)
        {
            textBox2.PasswordChar = '*';
        }

这样不对的
用户如果输入完密码,又全部删掉,你还得变回默认显示才行


Leave事件再价格判断呢

 private void textBox2_Leave(object sender, EventArgs e)
        {
            if (textBox2.Text == "")
            {
                textBox2.ForeColor = Color.Gray;
                textBox2.Text = "请输入密码";
                textBox2.PasswordChar = (char)(0);
            }
        }
  相关解决方案