1.处理异常
  这里说明的一个选项是,如果在Some Data类中设置了无效值,则这个局域网内NET类就抛出了一个异常。Valuel属性只接受大于5且小于12的值(代码文件Validation Demo/SomeData.cs)。
在MainWindowl类的构造函数中,舒适化Some Data类的一个新对象,并把它传递给Data Context,用于数据绑定(代码文件Validation Demo/MainWindoe.xanl.cs)。
  通过局域网呃逆简单的数据绑定,把文本框的Text属性绑定到Valuel属性上。如果现在运行应用程序,并试图把该值改为某个无效值,那么单击Submit按钮可以验证该值永远不会改变。WPF会捕获并忽略Valuel属性的set访问器跑出的异常(XAML文件Validation Demo/MainWindow.xam)。
  可以从Validation类的Errors集合中访问错误信息。要在文本框的工具提示中显示错误信息,可以创建一个属性触发器,只要把Validation类的Has Error属性设置为True,就激活触发器。触发器设置文本框的ToolTip属性。
  2.数据错误信息
  处理错误的另一种方式是确定.NET对象是否执行了IDateErrorInfo接口。SomeData类现在改为实现IDateErrorInfo接口。这个接口定义了Error属性和带字符串参数的索引器。在数据绑定的过程中验证WPF时,会调用索引器,并把要验证的属性名作为column Name参数传递,在实现代码中,如果有效,会验证其值,如果无效,就传递一个错误字符串。
  3.数据错误信息的通知
  除了支持利用异常和IDataErrorInfo接口进行验证之外,NET4.5附带的WPF还支持利用接口INotifyDataErrorInfo进行验证。在IDataErrorInfo接口中,属性的索引器可以返回一个错误,而在INotifyDataErrorInfo中,可以把多个错误关联到一个属性上。这些错误可以使用Get Errors方法来访INotifyDataErrorInfo中,可以把多个错误关联到一个属性上。这些错误可以使用Get Errors方法来访问。如果实体有错误,HasErrors属性就返回true。这个接口的另一个很好的功能是使用时间Errors Changed通知出了错误。这样,错误就可以在客户端异步检索,例如,可以调用一个Web服务来验证用户输入。此时,在检索结果时,用户可以急促处理输入表单,并获得不匹配情况的异步通知。
  下面的示例使用INotifyDataErrorInfo进行验证。该示例定义基类NotifyDataErrorInfoBase,这个基类实现了接口INotifyDataErrorInfo。它派生于基类BindableObject,来获得INotifyProperty Changed接口的实现。NotifyDataErrorInfoBase使用字典errors来包含一个列表,列表中的每个属性都用于存储错误信息。如果任何属性由错误,HasErrors属性就返回true。GetErrors方法返回一个属性的错误列表:时间Errors Changed再每次改变错误信息时触发。除了接口INotifyDataErrorInfo中成员之外,这个基类还实现了方法SetErrors、ClearErrors和Clear All Errors,以便于处理设置错误(代码文件Validation Demo/NotifyDataErrorInfoBase.cs)。
  4.自定义验证规则
  为了更多地控制验证方式,可以实现自定义验证规则。实现自定义验证规则的类必须派生自基类Validation Rule。在你前面的两个例子中,也使用了验证规则。派生自Validation Rule抽象基类的两个类是DataErrorValidationRule和ExceptionValidationRule。设置ValidatesOnDataErrorInfo接口,就可以激活DataErrorValidationRule。ExceptionValidationRule处理异常,设置ValidationOnException属性会激活ExceptionValidationRule。

★关于WorkWin公司电脑监控软件★

WorkWin的使命是打造Work用途的Windows 电脑系统,有效规范员工上网行为,让老板知道员工每天在做什么(监控包括屏幕、上网在内的一举一动),限制员工不能做什么(禁止网购、游戏、优盘等)。

WorkWin基于纯软件设计,非常容易使用,无需添加或改动任何硬件,使用一台管理机监控全部员工机电脑。历经南京网亚十余年精心打造,此时此刻每天都有成千上万企业电脑正在运行WorkWin,选择WorkWin选择“赢”。

WorkWin介绍

WorkWin监控首页 短视频讲解 下载免费试用版

版权所有,南京网亚计算机有限公司 。本文链接地址: 局域网内NET数据对象绑定的验证