TextBoxBase.Clear TextBoxBase.Clear TextBoxBase.Clear TextBoxBase.Clear Method

定義

テキスト ボックス コントロールからすべてのテキストを削除します。Clears all text from the text box control.

public:
 void Clear();
public void Clear ();
member this.Clear : unit -> unit
Public Sub Clear ()

次のコード例でTextBoxは、派生クラスを使用して、 TextChangedイベントのイベントハンドラーを作成します。The following code example uses TextBox, a derived class, to create an event handler for the TextChanged event. イベントハンドラー内のコードは、データを数値に制限します。The code within the event handler restricts data to numbers. コントロールにテキストを入力すると、入力したテキストが数値であるかどうかがコードによって判断されます。After text has been entered in the control, the code determines if the text entered is a number. テキストが数値でない場合、コードはコントロールからテキストをクリアしMessageBox 、が表示されます。これは、数字だけが受け入れられることをユーザーに警告するためのものです。If the text is not a number, the code clears the text from the control and a MessageBox is displayed to alert the user that only numbers are accepted. この例では、 Booleanというflag名前のTextBox変数とtextBox1という名前のコントロールが、このメソッドの外部で定義されている必要があります。The example requires that a Boolean variable named flag and a TextBox control called textBox1 are defined outside of this method. この例では、フラグ変数を使用して、 TextChangedイベントのカスケードイベントを回避する方法を示します。This example demonstrates how to use a flag variable to avoid a cascading event in the TextChanged event.

private:
   bool flag;

private:
   void MyTextChangedHandler( System::Object^ sender, System::EventArgs^ e )
   {
      Int64 val;
      // Check the flag to prevent code re-entry. 
      if ( flag == false )
      {
         // Set the flag to True to prevent re-entry of the code below.
         flag = true;
         // Determine if the text of the control is a number.
         try
         {
            // Attempt to convert to long
            val = System::Convert::ToInt64( textBox1->Text );
         }
         catch ( Exception^ ) 
         {
            // Display a message box and clear the contents if not a number.
            MessageBox::Show( "The text is not a valid number. Please re-enter" );
            // Clear the contents of the text box to allow re-entry.
            textBox1->Clear();
         }
         // Reset the flag so other TextChanged events are processed correctly.
         flag = false;
      }
   }
private bool flag;

private void MyTextChangedHandler(System.Object sender, System.EventArgs e)
{
    long val;    
    // Check the flag to prevent code re-entry. 
    if(flag == false)
    {
       // Set the flag to True to prevent re-entry of the code below.
       flag = true;
       // Determine if the text of the control is a number.
       try {
          // Attempt to convert to long
          val = System.Convert.ToInt64(textBox1.Text);
       }
       catch {
          // Display a message box and clear the contents if not a number.
          MessageBox.Show("The text is not a valid number. Please re-enter");
          // Clear the contents of the text box to allow re-entry.
          textBox1.Clear();
       }
       // Reset the flag so other TextChanged events are processed correctly.
       flag = false;
    }        
 }
 
Private flag As Boolean    

Private Sub MyTextChangedHandler(sender As System.Object, e As System.EventArgs)
    ' Check the flag to prevent code re-entry. 
    If flag = False Then
        ' Set the flag to True to prevent re-entry of the code below.
        flag = True
        ' Determine if the text of the control is a number.
        If IsNumeric(textBox1.Text) = False Then
            ' Display a message box and clear the contents if not a number.
            MessageBox.Show("The text is not a valid number. Please re-enter")
            ' Clear the contents of the text box to allow re-entry.
            textBox1.Clear()
        End If
        ' Reset the flag so other TextChanged events are processed correctly.
        flag = False
    End If
End Sub

注釈

このメソッドを使用すると、プロパティにText空の文字列を割り当てる代わりに、コントロールの内容を消去できます。You can use this method to clear the contents of the control instead of assigning the Text property an empty string.

適用対象

こちらもご覧ください