ContentControlBase.Validating - событие
Происходит при проверке содержимого элемента управления.
Пространство имен: Microsoft.Office.Tools.Word
Сборка: Microsoft.Office.Tools.Word (в Microsoft.Office.Tools.Word.dll)
Синтаксис
'Декларация
Event Validating As CancelEventHandler
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.");
}
Безопасность платформы .NET Framework
- Полное доверие для непосредственно вызывающего метода. Этот член не может быть использован частично доверенным кодом. Дополнительные сведения см. в разделе Использование библиотек из не вполне надежного кода.