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

Объект 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

Объект 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

Объект ValidationResult.

Применяется к