Procedura: visualizzare le icone di errori per la convalida dei form con il componente ErrorProvider di Windows FormHow to: Display Error Icons for Form Validation with the Windows Forms ErrorProvider Component

È possibile utilizzare un Windows Form ErrorProvider componente per visualizzare un'icona di errore quando l'utente immette dati non validi.You can use a Windows Forms ErrorProvider component to display an error icon when the user enters invalid data. È necessario disporre di almeno due controlli nel form per scheda tra di essi e quindi richiamare il codice di convalida.You must have at least two controls on the form in order to tab between them and thereby invoke the validation code.

Per visualizzare un'icona di errore quando il valore di un controllo non è validoTo display an error icon when a control's value is invalid

  1. Aggiungere due controlli, ad esempio, le caselle di testo, a un Windows Form.Add two controls — for example, text boxes — to a Windows Form.

  2. Aggiungere un ErrorProvider componente al form.Add an ErrorProvider component to the form.

  3. Selezionare il primo controllo e aggiungere codice al relativo Validating gestore dell'evento.Select the first control and add code to its Validating event handler. Affinché questo codice venga eseguito correttamente, la procedura deve essere collegata all'evento.In order for this code to run properly, the procedure must be connected to the event. Per ulteriori informazioni, vedere procedura: creare gestori eventi in fase di esecuzione per Windows Form.For more information, see How to: Create Event Handlers at Run Time for Windows Forms.

    Il codice seguente verifica la validità dei dati che immessi dall'utente; Se i dati non sono validi, il SetError metodo viene chiamato.The following code tests the validity of the data the user has entered; if the data is invalid, the SetError method is called. Il primo argomento del SetError metodo consente di specificare il controllo da visualizzare accanto all'icona.The first argument of the SetError method specifies which control to display the icon next to. Il secondo argomento è il testo di errore da visualizzare.The second argument is the error text to display.

    Private Sub TextBox1_Validating(ByVal Sender As Object, _  
       ByVal e As System.ComponentModel.CancelEventArgs) Handles _  
       TextBox1.Validating  
          If Not IsNumeric(TextBox1.Text) Then  
             ErrorProvider1.SetError(TextBox1, "Not a numeric value.")  
          Else  
             ' Clear the error.  
             ErrorProvider1.SetError(TextBox1, "")  
          End If  
    End Sub  
    
    protected void textBox1_Validating (object sender,  
       System.ComponentModel.CancelEventArgs e)  
    {  
       try  
       {  
          int x = Int32.Parse(textBox1.Text);  
          errorProvider1.SetError(textBox1, "");  
       }  
       catch (Exception ex)  
       {  
          errorProvider1.SetError(textBox1, "Not an integer value.");  
       }  
    }  
    
    private:  
       System::Void textBox1_Validating(System::Object ^  sender,  
          System::ComponentModel::CancelEventArgs ^  e)  
       {  
          try  
          {  
             int x = Int32::Parse(textBox1->Text);  
             errorProvider1->SetError(textBox1, "");  
          }  
          catch (System::Exception ^ ex)  
          {  
             errorProvider1->SetError(textBox1, "Not an integer value.");  
          }  
       }  
    

    (Visual c#, Visual C++Visual C++) inserire il codice seguente nel costruttore del form per registrare il gestore dell'evento.(Visual C#, Visual C++Visual C++) Place the following code in the form's constructor to register the event handler.

    this.textBox1.Validating += new  
    System.ComponentModel.CancelEventHandler(this.textBox1_Validating);  
    
    this->textBox1->Validating += gcnew  
       System::ComponentModel::CancelEventHandler  
       (this, &Form1::textBox1_Validating);  
    
  4. Eseguire il progetto.Run the project. Tipo di dati non valido (in questo esempio, non numerico) nel primo controllo e quindi passare al secondo.Type invalid (in this example, non-numeric) data into the first control, and then tab to the second. Quando viene visualizzata l'icona di errore, posizionare il puntatore del mouse per visualizzare il testo dell'errore.When the error icon is displayed, point at it with the mouse pointer to see the error text.

Vedere ancheSee Also

SetError
Panoramica sul componente ErrorProviderErrorProvider Component Overview
Procedura: Visualizzare errori in un dataset con il componente ErrorProvider di Windows FormHow to: View Errors Within a DataSet with the Windows Forms ErrorProvider Component