Поделиться через


ContentControlBase.Validating Событие (2007 System)

Обновлен: Ноябрь 2007

Происходит при проверке содержимого элемента управления.

Пространство имен:  Microsoft.Office.Tools.Word
Сборка:  Microsoft.Office.Tools.Word.v9.0 (в Microsoft.Office.Tools.Word.v9.0.dll)

Синтаксис

'Декларация
Public Event Validating As CancelEventHandler
'Применение
Dim instance As ContentControlBase
Dim handler As CancelEventHandler

AddHandler instance.Validating, handler
public event CancelEventHandler Validating

Заметки

Событие Validating происходит при потере элементом управления фокуса. Чтобы проверить, является ли текст в элементе управления допустимым в соответствии с выбранными условиями, создайте обработчик событий Validating. Например, при использовании элемента управления содержимым с номером телефона можно проверить, что элемент управления содержит только допустимые знаки (цифры, скобки, дефисы). Если содержимое не является допустимым, можно отменить событие и вернуть фокус элементу управления, присвоив свойству Cancel параметра CancelEventArgs обработчика событий значение true. Практический результат заключается в том, что пользователь не сможет пропустить этот элемент управления, пока не введет допустимый текст.

Чтобы выполнить код после успешной проверки элемента управления содержимым, создайте обработчик событий Validated.

Дополнительные сведения об обработке событий см. в разделе Прием событий.

Примеры

В приведенном ниже примере кода демонстрируются обработчики событий Validating и Validated. После того, как конечный пользователь изменит текст в элементе управления содержимым, обработчик событий Validating с помощью регулярного выражения проверит текст на наличие целых чисел.

В данном примере предполагается, что в документе содержится элемент управления PlainTextContentControl с именем plainTextContentControl1. Чтобы воспользоваться этим кодом, вставьте его в проекте в класс ThisDocument. В C# также необходимо присоединить обработчики событий к событиям Validated и Validating элемента управления plainTextContentControl1.

В этом примере демонстрируется настройка уровня документа.

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.");
}

Разрешения

См. также

Ссылки

ContentControlBase Класс

ContentControlBase - члены

Microsoft.Office.Tools.Word - пространство имен