Поделиться через


Практическое руководство. Создание текстового поля пароля с помощью элемента управления TextBox в Windows Forms

Поле пароля — это текстовое поле Windows Forms, в котором отображаются символы-заполнители, пока пользователь вводит строку.

Создание текстового поля пароля

  1. Задайте для свойства PasswordChar элемента управления TextBox определенный символ.

    Свойство 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;
       }
    

См. также