- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2.设计过程 (1)新建一个项目Chapter8_2。 (2)窗体及控件的设计外观如图8-2所示。 在窗体中添加ErrorProvider控件,该控件不会出现在窗体中,而是出现在组件区中。 (3)切换到代码窗口,编写程序代码,实现其功能。 该窗体的大部分程序代码与实例8-1相似,请参考实例8-1的程序代码,这里只分析验证数据的程序代码。 在【取消】按钮的Click事件过程中添加如代码8-1-6所示的三行代码,这三行代码的作用是撤销错误提示信息。 TextBox1的Leave事件过程的程序代码如代码8-1-7所示,这些代码的作用是验证窗体中的所有文本框是否都输入了数据,如果仍有一个或多个文本框没有输入数据,那么【保存】按钮就变为不可用状态。 TextBox2的Validating事件过程的程序代码如代码8-1-8所示。 TextBox3的Validated事件过程的程序代码如代码8-1-9所示。 TextBox4的LostFocus事件过程的程序代码如代码8-1-10所示。 3.代码分析 (1)代码8-1-7中的第03行至第13行展示了一种遍历窗体中所有控件的方法,第05行的作用是检验当前的控件是否为文本框。 一个窗体上包含多个文本框,当用户在一个文本框中输入数据完毕,准备移到窗体中的下一个文本框时会触发其Leave事件,该事件处理程序用于验证窗体上每个文本框中的数据是否正确。 (2)代码8-1-8中的第04行调用ErrorProvider组件的SetError方法,该方法规定了出错消息字符串和错误图标出现的位置。 (3)代码8-1-8中的第07行的作用是在每次用户修正错误之前清除错误信息。 4.知识要点说明 (1)ErrorProvider组件 ErrorProvider组件用于在用户输入无效数据时显示错误图标。ErrorProvider组件以友好的方式提醒用户出现了某个错误,并通过与用户交互来解决该问题,可以不关闭错误信息窗口继续运行程序。 ErrorProvider组件的SetError方法规定了出错消息字符串和错误图标出现的位置。该方法的参数包括一个控件的引用和一个错误描述字符串,例如:ErrorProvider1.SetError(TextBox3, 性别不能为空)。 (2)验证一个窗体上的多个域 窗体上有些域中的数据必须输入但还没有输入,将【确认】或【提交】按钮变为禁用状态,当用户输入完全部所需信息后,将命令按钮的Enabled属性设置为True,表示已成功完成了输入。 在所有域都已填写完毕后,利用Controls集合遍历并验证每个控件。当某个需要输入的域仍然为空时,向用户提供提示信息;当窗体上所有需要输入的域都已输入了数据时,激活【确定】按钮,其实现方法如代码8-1-7中的第03行至第13行所示。 8.2 在业务层对数据的验证 在数据集中建立合适的验证机制来验证数据,确保写入数据集的数据是正确且有效的。 1.数据集内的数据验证方式 (1)通过主键与唯一条件约束来进行唯一性验证。 (2)通过外键条件约束来确保数据引用完整性。 (3)编写验证输入数据的程序代码,以便在字段和记录变更事件触发时验证数据。 2.当记录数据发生变更时,会触发的事件 (1)字段值被更改期间会触发ColumnChanging事件,如果没有调用BeginEdit方法,则每一个字段所发生的变更都会触发一次ColumnChanging事件,接着会触发RowChanging事件;字段值的变更成功完成后会触发ColumnChanged事件。 (2)记录被更改期间会触发RowChanging事件,记录的变更成功完成后会触发Row Changed事件。 3.当记录被删除时,会触发的事件。 (1)记录被删除期间会触发RowDeleting事件。 (2)记录被删除成功完成后会触发RowDeleted事件。 8.2.1 设置数据记录的错误信息与数据验证 利用记录的RowChanging事件可以在记录被更改期间验证数据;利用记录的RowChanged事件可以在记录变更之后验证数据。 【实例8-3】 1.设计任务 设计一个窗体,该窗体事先设置好错误提示信息,当数据表中的某一条记录中的数据出现错误时,在DataGrid控件的左边对应位置会标记红色的惊叹号,当鼠标指针指向
您可能关注的文档
- 3G技术与基站工程第7章 3G室内分布工程.ppt
- 4S店主营业务与汽车营销任务八 车辆展示.ppt
- 4S店主营业务与汽车营销任务九 试乘试驾.ppt
- 4S店主营业务与汽车营销任务六 初次接触.ppt
- 4S店主营业务与汽车营销任务七 需求分析.ppt
- 4S店主营业务与汽车营销任务三 汽车市场分析.ppt
- 4S店主营业务与汽车营销任务十 谈判成交.ppt
- 4S店主营业务与汽车营销任务十二 客户跟踪.ppt
- 4S店主营业务与汽车营销任务十一 车辆交付.ppt
- 4S店主营业务与汽车营销任务四 汽车市场营销战略分析.ppt
- ADONET数据库访问技术案例教程(第9章)-对数据库和数据表的操作.ppt
- ADONET数据库访问技术案例教程(第10章)-数据绑定与记录导航.ppt
- ADONET数据库访问技术案例教程(第11章)-数据访问的参数设置与应用.ppt
- ADONET数据库访问技术案例教程(第12章)-报表制作与数据导出.ppt
- ADONET数据库访问技术案例教程(第13章)-数据库访问类的设计与应用.ppt
- ADONET数据库访问技术案例教程(第14章)-Web网页中的数据访问.ppt
- ADONET数据库访问技术案例教程(第15章)-数据库应用系统开发实例剖析.ppt
- After Effects CS6影视后期制作标准教程 (1).ppt
- After Effects CS6影视后期制作标准教程 (2).ppt
- After Effects CS6影视后期制作标准教程 (3).ppt
原创力文档


文档评论(0)