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


ValidationRule.ValidatesOnTargetUpdated Свойство

Определение

Возвращает или задает значение, которое указывает, выполняется ли правило проверки, когда обновляется целевой объект Binding.

public:
 property bool ValidatesOnTargetUpdated { bool get(); void set(bool value); };
public bool ValidatesOnTargetUpdated { get; set; }
member this.ValidatesOnTargetUpdated : bool with get, set
Public Property ValidatesOnTargetUpdated As Boolean

Значение свойства

Значение true, если правило проверки выполняется, когда обновляется целевой объект Binding; в противном случае — значение false.

Примеры

В следующем примере проверяется, является ли объект пустым TextBox . Для ValidationRuleпараметра , ValueIsNotNullзадано ValidatesOnTargetUpdated значение true, поэтому при запуске ValidationRule приложения выполняется и отображается сообщение, если TextBox объект пуст.

<TextBox Width="150"
         Validation.Error="ItemError">
  <TextBox.Text>
    <Binding Source="{StaticResource myObject}"
             Path="PropertyB"
             UpdateSourceTrigger="PropertyChanged"
             NotifyOnValidationError="True">
      <Binding.ValidationRules>
        <src:ValueIsNotNull ValidatesOnTargetUpdated="True" />
      </Binding.ValidationRules>
    </Binding>
  </TextBox.Text>
</TextBox>

В следующем примере показан ValidationRule объект , который используется в предыдущем примере, и обработчик Error события.

public class ValueIsNotNull : ValidationRule
{
    public override ValidationResult Validate(object value, System.Globalization.CultureInfo cultureInfo)
    {
        string str = value as string;

        if (!string.IsNullOrEmpty(str))
        {
            return ValidationResult.ValidResult;
        }
        else
        {
            return new ValidationResult(false, "Value must not be null");
        }
    }
}
Public Class ValueIsNotNull
    Inherits ValidationRule
    Public Overrides Function Validate(ByVal value As Object, ByVal cultureInfo As System.Globalization.CultureInfo) As ValidationResult
        Dim str As String = TryCast(value, String)

        If Not String.IsNullOrEmpty(str) Then
            Return ValidationResult.ValidResult
        Else
            Return New ValidationResult(False, "Value must not be null")
        End If
    End Function
End Class

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