次の方法で共有


方法: 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;
       }
    

関連項目