2014-04-03 50 views
-1

我有一個用作密碼框的文本框,並且我想讓默認密碼可見,然後當它被更改時,用'*'將其隱藏。因此,當用戶打開表單時,密碼文本框在文本框中將具有「welcome1」,但當它們更改時,密碼將顯示爲「*」。在文本框中啓動和關閉密碼行爲

我在看什麼:

if (txtPassword.Text == "welcome1") 
{ 
    // Set txtPassword.PasswordChar to null or empty. 
} 
else { txtPassword.PasswordChar = '*'; } 
+0

標題與內容不符。你需要重新設置觸發器密碼行爲的字段嗎? –

+0

這樣做更有意義。謝謝@ivan_pozdeev – Ben

回答

3

要重設密碼字符不能掩蓋,將其設置爲空字符:

txtPassword.PasswordChar = '\0'; 

MSDN上指定的默認值

+0

這就是我所需要的。我已經添加到我的代碼,現在它做我想要的:) – Ben

+0

太棒了!很高興我能夠提供幫助。 – BradleyDotNET

2

沒關係,只是想通了:

private void txtPassword_TextChanged(object sender, EventArgs e) 
{ 
    if (txtPassword.Text != "welcome1") 
    { 
     txtPassword.PasswordChar = '*'; 
    } 
} 
+0

多數民衆贊成在有些人想設置密碼爲「welcome1」再次考慮它的情況下有點愚蠢;-) – fixagon

+0

我在計劃的其他地方有其他措施來打擊這一點,但我想在一個更普遍的意義上是的,這是一個未完成的解決方案 – Ben

0

也許使用2個文本框。 1e可見真2e可見虛假 並將2e文本框的密碼字符設置爲* 在第一個文本框上單擊鼠標事件。 當有人點擊文本框輸入密碼時,文本框會改變。

private void textBox1_MouseClick(object sender, MouseEventArgs e) 
    { 
     textBox1.Text = ""; 
     textBox1.Visible = false; 
     textBox2.Visible = true; 
     textBox2.Focus(); 
    } 

也把一種形式的鼠標點擊,如果你沒有鍵入文本,回到文本框1 或類似的東西。

private void Form1_MouseClick(object sender, MouseEventArgs e) 
    { 
     if (textBox2.Text == "") 
     { 
      textBox2.Visible = false; 
      textBox1.Visible = true; 
      textBox1.Text = "Welcome1"; 
     } 
    } 
相關問題