Číst v angličtině

Sdílet prostřednictvím


Control.Validated Událost

Definice

Generuje se po dokončení ověření ovládacího prvku.

public event EventHandler Validated;
public event EventHandler? Validated;

Event Type

Příklady

Následující příklad kódu používá odvozenou třídu TextBox a ověří e-mailovou adresu, kterou uživatel zadá. Pokud e-mailová adresa není ve standardním formátu (obsahuje "@" a "."), ověření se nezdaří, ErrorProvider zobrazí se ikona a událost se zruší. Tento příklad vyžaduje, aby TextBox byl ve formuláři vytvořen ovládací prvek a ErrorProvider .

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 email address string is not empty.
   if(emailAddress.Length == 0)
   {
      errorMessage = "email address is required.";
         return false;
   }

   // Confirm that there is an "@" and a "." in the email address, and in the correct order.
   if(emailAddress.IndexOf("@") > -1)
   {
      if(emailAddress.IndexOf(".", emailAddress.IndexOf("@") ) > emailAddress.IndexOf("@") )
      {
         errorMessage = "";
         return true;
      }
   }
   
   errorMessage = "email address must be valid email address format.\n" +
      "For example 'someone@example.com' ";
      return false;
}

Poznámky

Když změníte fokus pomocí klávesnice (TAB, SHIFT+TAB atd.), voláním Select metod nebo SelectNextControl nebo nastavením ContainerControl.ActiveControl vlastnosti na aktuální formulář, události fokusu proběhnou v následujícím pořadí:

  1. Enter

  2. GotFocus

  3. Leave

  4. Validating

  5. Validated

  6. LostFocus

Když změníte fokus pomocí myši nebo voláním Focus metody, události fokusu nastanou v následujícím pořadí:

  1. Enter

  2. GotFocus

  3. LostFocus

  4. Leave

  5. Validating

  6. Validated

CausesValidation Pokud je vlastnost nastavena na false, Validating jsou události a Validated potlačeny.

Cancel Pokud je vlastnost nastavena CancelEventArgs na true v delegátu Validating události, všechny události, které by obvykle nastaly po Validating události jsou potlačeny.

Upozornění

Nepokoušejte se nastavit fokus z Enterobslužných rutin událostí , LeaveGotFocus, , LostFocusValidating, nebo Validated . To může způsobit, že aplikace nebo operační systém přestanou reagovat. Další informace najdete v tématu WM_KILLFOCUS a v části Zablokování zpráv v tématu O zprávách a frontách zpráv .

Další informace o zpracování událostí najdete v tématu Zpracování a vyvolávání událostí.

Platí pro

Produkt Verze
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

Viz také