War diese Seite hilfreich?
Ihr Feedback ist uns wichtig. Teilen Sie uns Ihre Meinung mit.
Weiteres Feedback?
1500 verbleibende Zeichen
Validating-Ereignis
Collapse the table of content
Expand the table of content
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original

Control.Validating-Ereignis

Wird ausgelöst, wenn das Steuerelement eine Validierung ausführt.

Namespace:  System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

public event CancelEventHandler Validating

Wenn Sie den Fokus mithilfe der Tastatur (TAB, UMSCHALT+TAB usw.), durch Aufrufen der Select-Methode oder der SelectNextControl-Methode oder durch Festlegen der ContainerControl.ActiveControl-Eigenschaft auf das aktuelle Formular ändern, treten die Fokusereignisse in der folgenden Reihenfolge ein:

  1. Enter

  2. GotFocus

  3. Leave

  4. Validating

  5. Validated

  6. LostFocus

Wenn Sie den Fokus mit der Maus oder durch Aufrufen der Focus-Methode ändern, werden Fokusereignisse in der folgenden Reihenfolge ausgelöst:

  1. Enter

  2. GotFocus

  3. LostFocus

  4. Leave

  5. Validating

  6. Validated

Wenn die CausesValidation-Eigenschaft auf false festgelegt ist, wird das Validating-Ereignis und das Validated-Ereignis unterdrückt.

Wenn die Cancel-Eigenschaft von CancelEventArgs im Validating-Ereignisdelegaten auf true festgelegt wird, werden alle normalerweise nach dem Validating-Ereignis eintretenden Ereignisse unterdrückt.

WarnhinweisVorsicht

Versuchen Sie nicht, den Fokus in den Ereignishandlern von Enter, GotFocus, Leave, LostFocus, Validating oder Validated festzulegen. Andernfalls reagiert die Anwendung oder das Betriebssystem möglicherweise nicht mehr. Weitere Informationen finden Sie im Thema WM_KILLFOCUS im Abschnitt "Keyboard Input Reference" sowie im Abschnitt "Message Deadlocks" des Themas "About Messages and Message Queues" in der MSDN Library unter http://msdn.microsoft.com/de-de/library/default.aspx.

Weitere Informationen über die Behandlung von Ereignissen finden Sie unter: Behandeln von Ereignissen.

Im folgenden Codebeispiel wird die abgeleitete Klasse TextBox verwendet und eine vom Benutzer eingegebene E-Mail-Adresse überprüft. Wenn die E-Mail-Adresse nicht das Standardformat hat (d. h. "@" und "." enthält), schlägt die Validierung fehl, ein ErrorProvider-Symbol wird angezeigt, und das Ereignis wird abgebrochen. Für dieses Beispiel müssen zuvor in einem Formular ein TextBox-Steuerelement und ein ErrorProvider-Steuerelement erstellt werden.


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

Unterstützt in: 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Unterstützt in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core-Rolle wird nicht unterstützt), Windows Server 2008 R2 (Server Core-Rolle wird mit SP1 oder höher unterstützt; Itanium wird nicht unterstützt)

Es werden nicht alle Versionen sämtlicher Plattformen von .NET Framework unterstützt.. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

Community-Beiträge

HINZUFÜGEN
Microsoft führt eine Onlineumfrage durch, um Ihre Meinung zur MSDN-Website zu erfahren. Wenn Sie sich zur Teilnahme entscheiden, wird Ihnen die Onlineumfrage angezeigt, sobald Sie die MSDN-Website verlassen.

Möchten Sie an der Umfrage teilnehmen?
Anzeigen:
© 2015 Microsoft