ValidationRule.Validate Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Выполняет проверки значения.
Перегрузки
| Имя | Описание |
|---|---|
| Validate(Object, CultureInfo) |
При переопределении в производном классе выполняет проверки значения. |
| Validate(Object, CultureInfo, BindingExpressionBase) |
Выполняет проверки значения. |
| Validate(Object, CultureInfo, BindingGroup) |
Выполняет проверки значения. |
Validate(Object, CultureInfo)
При переопределении в производном классе выполняет проверки значения.
public:
abstract System::Windows::Controls::ValidationResult ^ Validate(System::Object ^ value, System::Globalization::CultureInfo ^ cultureInfo);
public abstract System.Windows.Controls.ValidationResult Validate(object value, System.Globalization.CultureInfo cultureInfo);
abstract member Validate : obj * System.Globalization.CultureInfo -> System.Windows.Controls.ValidationResult
Public MustOverride Function Validate (value As Object, cultureInfo As CultureInfo) As ValidationResult
Параметры
- value
- Object
Значение целевого объекта привязки для проверки.
- cultureInfo
- CultureInfo
Язык и региональные параметры, используемые в этом правиле.
Возвращаемое значение
Объект ValidationResult.
Примеры
В следующем примере показано, как реализовать правило проверки. В следующем примере входное значение недопустимо, если оно содержит нечисловые символы или находится за пределами нижней и верхней границ. Если входное значение недопустимо, ErrorContent для свойства задано соответствующее сообщение об ошибке, а IsValid для свойства задано значение false.
Полный пример см. в разделе "Практическое руководство. Реализация проверки привязки".
public class AgeRangeRule : ValidationRule
{
public int Min { get; set; }
public int Max { get; set; }
public AgeRangeRule()
{
}
public override ValidationResult Validate(object value, CultureInfo cultureInfo)
{
int age = 0;
try
{
if (((string)value).Length > 0)
age = Int32.Parse((String)value);
}
catch (Exception e)
{
return new ValidationResult(false, $"Illegal characters or {e.Message}");
}
if ((age < Min) || (age > Max))
{
return new ValidationResult(false,
$"Please enter an age in the range: {Min}-{Max}.");
}
return ValidationResult.ValidResult;
}
}
Комментарии
Этот метод необходимо реализовать при создании подкласса ValidationRule класса, чтобы создать пользовательское правило проверки.
Каждый раз, когда подсистема привязки данных передает значение из целевого свойства привязки (от входных данных пользователя) к свойству источника привязки (базовым данным), он проверяет, определены ли для этой привязки какие-либо ValidationRules . Если ValidationRules они определены для привязки, подсистема вызывает Validate метод на каждом ValidationRule из них, пока один из них не обнаружит ошибку или пока не пройдет все из них.
Подробные сведения о проверке данных см. в разделе "Обзор привязки данных".
См. также раздел
Применяется к
Validate(Object, CultureInfo, BindingExpressionBase)
Выполняет проверки значения.
public:
virtual System::Windows::Controls::ValidationResult ^ Validate(System::Object ^ value, System::Globalization::CultureInfo ^ cultureInfo, System::Windows::Data::BindingExpressionBase ^ owner);
public virtual System.Windows.Controls.ValidationResult Validate(object value, System.Globalization.CultureInfo cultureInfo, System.Windows.Data.BindingExpressionBase owner);
abstract member Validate : obj * System.Globalization.CultureInfo * System.Windows.Data.BindingExpressionBase -> System.Windows.Controls.ValidationResult
override this.Validate : obj * System.Globalization.CultureInfo * System.Windows.Data.BindingExpressionBase -> System.Windows.Controls.ValidationResult
Public Overridable Function Validate (value As Object, cultureInfo As CultureInfo, owner As BindingExpressionBase) As ValidationResult
Параметры
- value
- Object
Значение целевого объекта привязки для проверки.
- cultureInfo
- CultureInfo
Язык и региональные параметры, используемые в этом правиле.
- owner
- BindingExpressionBase
Выражение привязки, использующее правило проверки.
Возвращаемое значение
Объект ValidationResult.
Применяется к
Validate(Object, CultureInfo, BindingGroup)
Выполняет проверки значения.
public:
virtual System::Windows::Controls::ValidationResult ^ Validate(System::Object ^ value, System::Globalization::CultureInfo ^ cultureInfo, System::Windows::Data::BindingGroup ^ owner);
public virtual System.Windows.Controls.ValidationResult Validate(object value, System.Globalization.CultureInfo cultureInfo, System.Windows.Data.BindingGroup owner);
abstract member Validate : obj * System.Globalization.CultureInfo * System.Windows.Data.BindingGroup -> System.Windows.Controls.ValidationResult
override this.Validate : obj * System.Globalization.CultureInfo * System.Windows.Data.BindingGroup -> System.Windows.Controls.ValidationResult
Public Overridable Function Validate (value As Object, cultureInfo As CultureInfo, owner As BindingGroup) As ValidationResult
Параметры
- value
- Object
Значение целевого объекта привязки для проверки.
- cultureInfo
- CultureInfo
Язык и региональные параметры, используемые в этом правиле.
- owner
- BindingGroup
Группа привязки, использующая правило проверки.
Возвращаемое значение
Объект ValidationResult.