我正在尝试使用Entlib 5.0验证WPF中的用户输入。我想检查文本框中的值是否为数字。
我的模特:
public class Customer
{
[Required(ErrorMessage = "Country is required")]
public double Country { get; set; }
}
的Xaml:
<TextBox>
<TextBox.Text>
<Binding Path="Country" UpdateSourceTrigger="PropertyChanged" >
<Binding.ValidationRules>
<vab:ValidatorRule ValidationSpecificationSource="All" SourceType="{x:Type bl:Customer}" SourcePropertyName="Country"/>
</Binding.ValidationRules>
</Binding>
</TextBox.Text>
</TextBox>
当我将文本设置为texbox时,Validation.HasError设置为false。
我可以如何验证这种情况。
答案 0 :(得分:0)
我找到了解决方案。
绑定应如下所示:
<Binding Path="Country" UpdateSourceTrigger="PropertyChanged" NotifyOnValidationError="True" ValidatesOnExceptions="True">
<Binding.ValidationRules>
<vab:ValidatorRule ValidationSpecificationSource="All" SourceType="{x:Type bl:Customer}" SourcePropertyName="Country"/>
</Binding.ValidationRules>
</Binding>