Silverlight之Validation数据验证
来源:广州中睿信息技术有限公司官网
发布时间:2012/10/21 23:25:16 编辑:itlead 阅读 1508
实际应用中,我们经常需要对输入信息进行验证,验证他们是否为空,验证输入字符串长度是否合适、输入数字类型是否正确。有时候会习惯性的用MessageBox.Show,并不是说这个不好,只是如果需要验证的
 
  
  实际应用中,我们经常需要对输入信息进行验证,验证他们是否为空,验证输入字符串长度是否合适、输入数字类型是否正确。有时候会习惯性的用MessageBox.Show,并不是说这个不好,只是如果需要验证的字段有好几个,每个都是用弹出框,会让用户感到厌倦。Silverlight之Validation数据验证为我们提供了一种比较的清晰验证方法。
 
  首先,我们要了解它的概念:
 
  BindingValidationError事件
 
  该事件是一个路由事件,当数据验证错误出现时,将绑定该错误到数据源;也可以简单的理解为绑定错误到数据源的一个行为。该事件可在控件本身调用,也可在其父控件中调用。例如,在TextBox中,可以声明调用BindingValidationError,或者可以该TextBox的父容器控件 Grid,StackPanel中调用BindingValidationError事件。这里需要注意的是,如果在Silverlight的MVVM设计模式下,仅在被验证的控件本身激活BindingValidationError事件,才能正常的被UI捕获到错误信息,不支持在父控件中对 BindingValidationError事件进行调用。
  
    为了保证Validation的灵活性,微软同时提供了相关属性,来控制BindingValidationError事件的调用。NotifyOnValidationError和ValidatesOnExceptions属性。
 
  NotifyOnValidationError属性
 
  该属性的功能,是当验证错误出现时是否激活BindingValidationError事件;该属性是Silverlight独有的验证属性之一,经常和ValidatesOnExceptions属性配合使用。
 
  ValidatesOnExceptions属性
 
  该属性的功能,数据绑定引擎是否捕获显示异常错误作为验证错误。简单的理解,在控件绑定数据时,出现数据源异常抛出,或者数据类型转换时异常抛出,是否作为Validation验证显示在客户端。如果是True,则会按照Validation传统的处理方式,弹出一个红色说明标签,内容是异常错误信息,反之,则不捕获异常作为Validation。
  
    1.jpg
  
  这是一个非常简单的小例子。虽然简单但是结合它看属性会比较易懂。
  
  当然,我们也可以自己写事件
 
  
 
 
 
 
本站技术原创栏目文章均为中睿原创或编译,转载请注明:文章来自中睿,本站保留追究责任的权利。
 
 
  
联系我们CONTACT 扫一扫
愿景:成为最专业的软件研发服务领航者
中睿信息技术有限公司 广州•深圳 Tel:020-38931912 务实 Pragmatic
广州:广州市天河区翰景路1号金星大厦18层中睿信息 Fax:020-38931912 专业 Professional
深圳:深圳市福田区车公庙有色金属大厦509~510 Tel:0755-25855012 诚信 Integrity
所有权声明:PMI, PMP, Project Management Professional, PMI-ACP, PMI-PBA和PMBOK是项目管理协会(Project Management Institute, Inc.)的注册标志。
版权所有:广州中睿信息技术有限公司 粤ICP备13082838号-2