Freigeben über


ContentControlBase.Validating-Ereignis

Tritt auf, wenn der Inhalt des Inhaltssteuerelements überprüft wird.

Namespace:  Microsoft.Office.Tools.Word
Assembly:  Microsoft.Office.Tools.Word (in Microsoft.Office.Tools.Word.dll)

Syntax

'Declaration
Event Validating As CancelEventHandler
event CancelEventHandler Validating

Hinweise

Das Validating-Ereignis wird ausgelöst, wenn das Steuerelement den Fokus verliert. Behandeln Sie das Validating-Ereignis, um zu bestimmen, ob der Text im Inhaltssteuerelement je nach ausgewählten Kriterien gültig ist. Wenn das Formular beispielsweise ein Inhaltssteuerelement mit einer Telefonnummer enthält, können Sie überprüfen, ob es tatsächlich nur entsprechende Zeichen enthält (Zahlen, Klammern, Bindestriche). Wenn der Inhalt ungültig ist, können Sie das Ereignis abbrechen und den Fokus wieder auf das Steuerelement festlegen, indem Sie die Cancel-Eigenschaft des CancelEventArgs-Parameters des Ereignishandlers auf true festlegen. Die praktische Auswirkung besteht darin, dass Benutzer das Steuerelement nicht verlassen können, bis der Text gültig ist.

Behandeln Sie das Validated-Ereignis, um Code auszuführen, nachdem das Inhaltssteuerelement erfolgreich überprüft wurde.

Weitere Informationen zum Behandeln von Ereignissen finden Sie unter Behandeln von Ereignissen.

Beispiele

Im folgenden Codebeispiel werden Ereignishandler für das Validating-Ereignis und das Validated-Ereignis dargestellt. Wenn der Endbenutzer den Text im Inhaltssteuerelement geändert hat, überprüft der Ereignishandler für das Validating-Ereignis anhand eines regulären Ausdrucks, dass der Text keine ganzen Zahlen enthält.

In diesem Beispiel wird davon ausgegangen, dass das Dokument ein PlainTextContentControl mit dem Namen plainTextContentControl1 enthält. Wenn Sie diesen Code verwenden möchten, fügen Sie ihn in der ThisDocument-Klasse im Projekt ein. In C# müssen Sie außerdem die Ereignishandler an das Validated-Ereignis und das Validating-Ereignis von plainTextContentControl1 anfügen.

Dieses Beispiel bezieht sich auf eine Anpassung auf Dokumentebene.

Private Sub plainTextContentControl1_Validating(ByVal sender As Object, _
    ByVal e As System.ComponentModel.CancelEventArgs) _
    Handles PlainTextContentControl1.Validating

    Dim control As Microsoft.Office.Tools.Word.PlainTextContentControl = _
        TryCast(sender, Microsoft.Office.Tools.Word.PlainTextContentControl)

    If control IsNot Nothing Then
        Dim regex As New System.Text.RegularExpressions.Regex("\d")
        If regex.IsMatch(control.Text) Then
            MessageBox.Show("Invalid name. Names cannot contain integers.")
            e.Cancel = True
        End If
    End If
End Sub

Private Sub plainTextContentControl1_Validated(ByVal sender As Object, ByVal e As System.EventArgs) _
    Handles PlainTextContentControl1.Validated

    MessageBox.Show("The name is valid.")
End Sub
void plainTextContentControl1_Validating(object sender, System.ComponentModel.CancelEventArgs e)
{
    Microsoft.Office.Tools.Word.PlainTextContentControl control =
        sender as Microsoft.Office.Tools.Word.PlainTextContentControl;

    if (control != null)
    {
        System.Text.RegularExpressions.Regex regex = new System.Text.RegularExpressions.Regex(@"\d");
        if (regex.IsMatch(control.Text))
        {
            MessageBox.Show("Invalid name. Names cannot contain integers.");
            e.Cancel = true;
        }
    }
}

void plainTextContentControl1_Validated(object sender, EventArgs e)
{
    MessageBox.Show("The name is valid.");
}

.NET Framework-Sicherheit

Siehe auch

Referenz

ContentControlBase Schnittstelle

Microsoft.Office.Tools.Word-Namespace