本文演示Enterprise Library – Validation Application Block 验证管理模块的使用,将Validation Application Block与Windows Form进行集成。直接对控件的值进行验证,而不是对业务对象实例进行验证,这一机制和前面的练习不同。本文由http://blog.entlib.com 开源ASP.NET博客平台小组根据EntLib HOL手册编译提供,欢迎交流。
 
练习七:Validation Application Block与Windows Form集成
直接打开\Enterprise Library 4.1 HOL\CS\Validation\Labs\Lab07\Before目录下的ValidationHOL.sln项目文件。
 
1. 添加ValidationProvider到Visual Studio 工具栏中
打开Mainform.cs文件,在Visual Studio工具栏中,右键点击,并选择Choose Items,如下图所示。
 
 
在弹出的窗口中,点击Browse按钮,导航到EntLib的Lib目录,选择如下程序集:
Microsoft.Practices.EnterpriseLibrary.Validation.Integration.WinForms.dll
 
 
点击 open按钮,选择该程序集。
 
在接下来的窗口中,选择ValidationProvider 复选框,如下图所示,点击OK按钮。这样,ValidationProvider 将出现在Tool Box中。
 
 
2. 在Windows Form 中添加一个ErrorProvider
尽管这一步不是必须的,但一般情况下标准的ErrorProvider 控件将与ValidatorProvider一起工作,如用户数据录入无效时,提供反馈信息。
展开Toolbox工具栏中Components标签,选择ErrorProvider,并拖放到设计界面。
 
3. 为Customer字段添加Validation的支持
在设计界面选中ValidationProvider控件,在属性窗口设置如下属性:
name = customerValidationProvider
SourceTypeName = ValidationHOL.BusinessLogic.Customer, ValidationHOL.BusinessLogic
ErrorProvider = errorProvider1
如下图所示。
 
 
(2)下面进一步设置FirstName和LastName文本框的相关Validation属性。
选择FirstName文本框,设置如下属性:
Performs validation on customerValidationProvider = True
SourcePropertyName = FirstName
 
 
重复上述操作,选择LastName文本框,设置如下属性:
Performs validation on customerValidationProvider = True
SourcePropertyName = LastName
 
选择SSN文本框,设置如下属性:
Performs validation on customerValidationProvider = True
SourcePropertyName = SSN
 
4. 为Address字段添加Validation支持
(1)再次拖拉ValidationProvider控件到设计界面;
(2)设置该ValidationProvider的如下属性:
name = addressValidationPRovider
SourcePropertyName = ValidationHOL.BusinessLogic.Address, ValidationHOL.BusinessLogic
ErrorProvider = errorProvider1
 
 
进一步设置Street Address、City、Zip Code文本框的属性,如下所示:
PerformValidation on addressValidationProvider = True
SourcePropertyName on addressValidationProvider = StreetAddress
 
 
City 文本框:
PerformValidation on addressValidationProvider = True
SourcePropertyName on addressValidationProvider = City
 
Zip Code文本框:
PerformValidation on addressValidationProvider = True
SourcePropertyName on addressValidationProvider = ZipCode
 
State下拉列表框:
PerformValidation on addressValidationProvider = True
SourcePropertyName on addressValidationProvider = State
 
5. 运行范例程序,检查validation的运行效果,如下图所示。
 
 
http://www.entlib.com专业ASP.NET电子商务平台小组,欢迎你继续访问Validation Application Block学习手册。
 
参考文档:
Validation Application Block Hands-On Labs for Enterprise Library
posted on 2010-09-15 10:00  vibratea  阅读(252)  评论(0编辑  收藏  举报