Udostępnij za pośrednictwem


TextBoxBase.Clear Metoda

Definicja

Czyści cały tekst z kontrolki pola tekstowego.

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

Przykłady

W poniższym przykładzie kodu użyto TextBoxklasy pochodnej , aby utworzyć program obsługi zdarzeń dla TextChanged zdarzenia. Kod w programie obsługi zdarzeń ogranicza dane do liczb. Po wprowadzeniu tekstu w kontrolce kod określa, czy wprowadzony tekst jest liczbą. Jeśli tekst nie jest liczbą, kod czyści tekst z kontrolki, a element MessageBox zostanie wyświetlony w celu powiadomienia użytkownika, że akceptowane są tylko liczby. Przykład wymaga, aby zmienna Boolean o nazwie flag i wywołana kontrolka TextBoxtextBox1 została zdefiniowana poza tą metodą. W tym przykładzie pokazano, jak użyć zmiennej flagi, aby uniknąć zdarzenia kaskadowego w TextChanged zdarzeniu.

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

Uwagi

Za pomocą tej metody można wyczyścić zawartość kontrolki zamiast przypisywać Text właściwości pusty ciąg.

Dotyczy

Zobacz też