Udostępnij za pośrednictwem


Instrukcje: tworzenie pola tekstowego hasła za pomocą kontrolki TextBox formularzy systemu Windows

Pole hasła to pole tekstowe formularzy systemu Windows, które wyświetla symbole zastępcze, podczas gdy użytkownik wpisze ciąg.

Aby utworzyć pole tekstowe hasła

  1. Ustaw właściwość PasswordChar kontrolki TextBox na określony znak.

    Właściwość PasswordChar określa znak wyświetlany w polu tekstowym. Jeśli na przykład chcesz wyświetlić gwiazdki w polu hasła, określ * dla właściwości PasswordChar w oknie Właściwości. Następnie, niezależnie od tego, jaki znak użytkownik wpisze w polu tekstowym, zostanie wyświetlona gwiazdka.

  2. (Opcjonalnie) Ustaw właściwość MaxLength. Właściwość określa, ile znaków można wpisać w polu tekstowym. Jeśli maksymalna długość zostanie przekroczona, system emituje sygnał dźwiękowy, a pole tekstowe nie akceptuje więcej znaków. Pamiętaj, że nie chcesz tego robić, ponieważ maksymalna długość hasła może być używana dla hakerów, którzy próbują odgadnąć hasło.

    W poniższym przykładzie kodu pokazano, jak zainicjować pole tekstowe, które będzie akceptować ciąg o długości do 14 znaków i wyświetlać gwiazdki zamiast ciągu. Procedura InitializeMyControl nie zostanie wykonana automatycznie; musi być wywoływana.

    Ważne

    Użycie właściwości PasswordChar w polu tekstowym może pomóc w zapewnieniu, że inne osoby nie będą mogły określić hasła użytkownika, jeśli obserwują wprowadzenie go przez użytkownika. Ten środek zabezpieczeń nie obejmuje żadnego rodzaju przechowywania ani przesyłania hasła, które może zachodzić z powodu logiki aplikacji. Ponieważ wprowadzony tekst nie jest zaszyfrowany w żaden sposób, należy traktować go tak, jak w przypadku innych poufnych danych. Mimo że hasło nie wygląda na takie, nadal jest traktowane jako tekst w formie zwykłego ciągu znaków (chyba że zaimplementowano dodatkowe środki bezpieczeństwa).

    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;
       }
    

Zobacz także