【问题标题】:Updating data source on validation error更新验证错误的数据源
【发布时间】:2018-08-21 15:07:19
【问题描述】:

我有一个TextBox 绑定到下面的属性。它具有自定义验证的两种方式绑定。如果验证未通过并且出现错误,则绑定不会更新源。即使验证有错误,如何才能更新源?我希望验证更多的是警告,而不是错误。

这是我的简化 xaml:

<TextBox>
    <TextBox.Text>
       <Binding Path="Value"
        UpdateSourceTrigger="PropertyChanged">
          <Binding.ValidationRules>
             <validators:TelephoneNumberRule />
             <validators:NotOptionalRule />
          </Binding.ValidationRules>
       </Binding>
    </TextBox.Text>
</TextBox>

还有属性:

public string Value { get; set; }

谢谢。

【问题讨论】:

    标签: wpf validation data-binding


    【解决方案1】:

    ValidationRuleValidationStep 属性设置为UpdatedValue 将导致它在源属性更新后运行:

    <TextBox>
        <TextBox.Text>
            <Binding Path="Value" UpdateSourceTrigger="PropertyChanged">
                <Binding.ValidationRules>
                    <validators:TelephoneNumberRule ValidationStep="UpdatedValue" />
                    <validators:NotOptionalRule ValidationStep="UpdatedValue" />
                </Binding.ValidationRules>
            </Binding>
        </TextBox.Text>
    </TextBox>
    

    【讨论】:

    猜你喜欢
    • 2014-12-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-16
    • 1970-01-01
    • 2020-11-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多