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


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

Обновлен: Ноябрь 2007

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

Чтобы создать текстовое поле пароля

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

    Свойство PasswordChar определяет знак, используемый в текстовом поле. Например, чтобы в поле пароля отображались звездочки, следует задать знак * в качестве значения свойства PasswordChar в окне "Свойства".<]. После этого, какие бы знаки пользователь ни вводил в текстовом поле, вместо них будут отображаться звездочки.

  2. (Не обязательно) Установите свойство MaxLength. Это свойство определяет, сколько знаков может быть введено в текстовом поле. При превышении максимального количества раздается звуковой сигнал и ввод других знаков в текстовое поле становится невозможным. Задавать это свойство не всегда целесообразно, так как максимальная длина пароля может быть использована злоумышленниками, пытающимися подобрать пароль.

    В следующем примере кода инициализируется текстовое поле, предназначенное для ввода строк длиной до 14 знаков, вместо которых должны отображаться звездочки. Процедура InitializeMyControl не выполняется автоматически; она должна быть вызвана.

    d3223ht2.alert_security(ru-ru,VS.90).gifПримечание о безопасности.

    Использование свойства 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() 
    {
       // Put some text into the control first.
       textBox1.set_Text("This is a TextBox control.");     
       // Set to no text.
       textBox1.set_Text("");
       // The password character is an asterisk.
       textBox1.set_PasswordChar('*');
       // The control will allow no more than 14 characters.
       textBox1.set_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;
       }
    

См. также

Задачи

Практическое руководство. Управление положением курсора в элементе управления TextBox в Windows Forms

Практическое руководство. Создание текстового поля, доступного только для чтения (Windows Forms)

Практическое руководство. Добавление кавычек в строку (Windows Forms)

Практическое руководство. Выделение текста в элементе управления TextBox в Windows Forms

Практическое руководство. Многострочные элементы управления TextBox в Windows Forms

Ссылки

Общие сведения об элементе управления TextBox (Windows Forms)

TextBox

Другие ресурсы

Элемент управления TextBox (Windows Forms)