如何:使用 Windows 窗体 TextBox 控件创建密码文本框

密码框是在用户键入字符串时显示占位符字符的 Windows 窗体文本框。

创建密码文本框

  1. TextBox 控件的 PasswordChar 属性设置为特定字符。

    PasswordChar 属性指定文本框中显示的字符。 例如,如果希望在密码框中显示星号,请在“属性”窗口中为 PasswordChar 属性指定 *。 然后,无论用户在文本框中输入什么字符,都会显示一个星号。

  2. (可选)设置 MaxLength 属性。 该属性决定了可以在文本框中输入多少个字符。 如果超过最大长度,系统会发出提示音,文本框不再接受任何字符。 请注意,你可能不希望这样做,因为设置成最大长度的密码可能让试图破解密码的黑客有机可乘。

    下面的代码示例演示如何初始化一个文本框,该文本框将接受最长 14 个字符的字符串并显示星号来代替字符串。 InitializeMyControl 过程不会自动执行;它必须被调用。

    重要

    在文本框上使用 PasswordChar 属性有助于确保其他人在旁观用户输入密码时无法确定用户的密码。 此安全措施不包括由于应用程序逻辑而可能发生的任何类型的密码存储或传输。 由于输入的文本没有以任何方式加密,所以应像对待任何其他机密数据一样对待它。 即使密码没有这样显示,它仍被视为一种纯文本字符串(除非你实施了一些额外的安全措施)。

    Private Sub InitializeMyControl()
       ' Set to no text.
       TextBox1.Text = ""
       ' The password character is an asterisk.
       TextBox1.PasswordChar = "*"
       ' The control will allow no more than 14 characters.
       TextBox1.MaxLength = 14
    End Sub
    
    private void InitializeMyControl()
    {
       // Set to no text.
       textBox1.Text = "";
       // The password character is an asterisk.
       textBox1.PasswordChar = '*';
       // The control will allow no more than 14 characters.
       textBox1.MaxLength = 14;
    }
    
    private:
       void InitializeMyControl()
       {
          // Set to no text.
          textBox1->Text = "";
          // The password character is an asterisk.
          textBox1->PasswordChar = '*';
          // The control will allow no more than 14 characters.
          textBox1->MaxLength = 14;
       }
    

另请参阅