Questo articolo è stato tradotto automaticamente. Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese

Evento Control.Validated

 

Data di pubblicazione: ottobre 2016

Si verifica al termine della convalida del controllo.

Spazio dei nomi:   System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

public event EventHandler Validated

Quando si modifica lo stato attivo usando la tastiera (TAB, MAIUSC + TAB e così via), chiamando il Select o SelectNextControl metodi o impostando la ContainerControl.ActiveControl proprietà sul form corrente, gli eventi dello stato attivo si verificano nell'ordine seguente:

  1. Enter

  2. GotFocus

  3. Leave

  4. Validating

  5. Validated

  6. LostFocus

Quando si modifica lo stato attivo usando il mouse o chiamando il Focus (metodo), gli eventi dello stato attivo si verificano nell'ordine seguente:

  1. Enter

  2. GotFocus

  3. LostFocus

  4. Leave

  5. Validating

  6. Validated

Se il CausesValidation è impostata su false, Validating e Validated vengono soppressi.

Se il Cancel proprietà del CancelEventArgs è impostato su true nel Validating delegato dell'evento, tutti gli eventi che in genere si verificano dopo il Validating evento verranno soppressi.

System_CAPS_cautionAttenzione

Non tentare di impostare lo stato attivo dall'interno di Enter, GotFocus, Leave, LostFocus, Validating, o Validated i gestori eventi. Questa operazione può causare l'applicazione o del sistema operativo di rispondere. Per ulteriori informazioni, vedere ilWM_KILLFOCUSargomento, mentre la sezione "Messaggio deadlock" il About Messages and Message Queues argomento.

Per ulteriori informazioni sulla gestione degli eventi, vedere la gestione e generazione di eventi.

L'esempio di codice seguente viene utilizzata la classe derivata TextBox e convalida di un indirizzo di posta elettronica immesso dall'utente. Se l'indirizzo di posta elettronica non è nel formato standard (contenente "@" e"."), la convalida non riesce, un ErrorProvider viene visualizzata l'icona e l'evento viene annullato. Questo esempio richiede che un TextBox e ErrorProvider siano stati creati in un form.

private void textBox1_Validating(object sender, 
 				System.ComponentModel.CancelEventArgs e)
{
   string errorMsg;
   if(!ValidEmailAddress(textBox1.Text, out errorMsg))
   {
      // Cancel the event and select the text to be corrected by the user.
      e.Cancel = true;
      textBox1.Select(0, textBox1.Text.Length);

      // Set the ErrorProvider error with the text to display. 
      this.errorProvider1.SetError(textBox1, errorMsg);
   }
}

private void textBox1_Validated(object sender, System.EventArgs e)
{
   // If all conditions have been met, clear the ErrorProvider of errors.
   errorProvider1.SetError(textBox1, "");
}
public bool ValidEmailAddress(string emailAddress, out string errorMessage)
{
   // Confirm that the e-mail address string is not empty.
   if(emailAddress.Length == 0)
   {
      errorMessage = "e-mail address is required.";
         return false;
   }

   // Confirm that there is an "@" and a "." in the e-mail address, and in the correct order.
   if(emailAddress.IndexOf("@") > -1)
   {
      if(emailAddress.IndexOf(".", emailAddress.IndexOf("@") ) > emailAddress.IndexOf("@") )
      {
         errorMessage = "";
         return true;
      }
   }

   errorMessage = "e-mail address must be valid e-mail address format.\n" +
      "For example 'someone@example.com' ";
      return false;
}

.NET Framework
Disponibile da 1.1
Torna all'inizio
Mostra: