Validation
文章平均质量分 76
iHuoBaby
这个作者很懒,什么都没留下…
展开
-
WPF数据验证(3)——自定义验证规则
应用自定义验证规则的方法和应用自定义转换器的方法类似。该方法定义了一个 ValidationRule 的类,并且为了执行验证重写 Validate 方法。public class PositivePriceRule : ValidationRule{ public override ValidationResult Validate(object value, System原创 2013-02-07 16:24:29 · 2142 阅读 · 0 评论 -
WPF数据验证(6)—— IDataErrorInfo + DataAnnotations
前面介绍过居于 IDataErrorInfo 接口的数据验证。利用 IDataErrorInfo 的好处是它可用于轻松地处理交叉耦合属性。但也具有一个很大的弊端:索引器的实现通常会导致较大的 switch-case 语句(对象中的每个属性名称都对应于一种情况),必须基于字符串进行切换和匹配,并返回指示错误的字符串。而且,在对象上设置属性值之前,不会调用 IDataErrorInfo 的实现。原创 2013-02-07 20:47:22 · 2020 阅读 · 0 评论 -
WPF数据验证(2)—— DataErrorValidationRule 验证规则
有时候我们可能不喜欢通过引发异常来指示用户输入错误。这可能是因为一下几个原因:异常不是由用户输入错误造成的,而可能是由于多个值之间的交互造成的,并且有时为了进行进一步处理,保存不正确的数值是值得的,而不是完全拒绝它们。下面是 Product 类的修订版,该版本实现了 IDataErrorInfo 接口。namespace ValidationRuleDemo{ public cla原创 2013-02-07 15:40:52 · 2405 阅读 · 0 评论 -
WPF数据验证(4)——响应与获取验证错误
前面的示例中,有关用户接受到错误的唯一指示是在违反规则的文本框周围的红色轮廓。为了提供更多信息,可以处理 Error 事件,但存储或清除错误时会引发该事件,但前提是必须确保已将 Binding.NotifyOnValidationError 属性设置为 True。Error 事件是一个使用冒泡策略的路由事件,所以可以通过在父容器中关联事件处理程序为多个控件处理 Error 事件:事原创 2013-02-07 18:38:22 · 3635 阅读 · 0 评论 -
WPF数据验证(5)—— 错误模板
<TextBlock DockPanel.Dock="Bottom" Foreground="Red" Text="{Binding ElementName=adorned,Path=AdornedElement.(Validation.Errors)[0].ErrorContent}"/>原创 2013-02-07 20:02:40 · 2112 阅读 · 0 评论 -
WPF数据验证(1)—— ExceptionValidationRule验证规则
ExceptionValidationRule 是预先构建的验证规则,它向WPF报告所以的异常。要使用 ExceptionValidationRule 验证规则,必须将它添加到 Binding.ValidationRules 集合中:Xaml:<Window x:Class="ValidationRuleDemo.MainWindow" xmlns="http://sche原创 2013-02-07 15:13:14 · 2332 阅读 · 0 评论