1. 程式人生 > >WinForm的控制元件 CheckBox 顯示隱藏密碼 TextBox恢復IsPasswordChar 預設值、取消密碼框設定

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型別的預設值。