当在窗体上添加组件errorProvider后,窗体的其他控件上将出现errorProvider1方面的属性,即属性“errorProvider上的Error”内容不为空时警告图标将显示在窗体,因此这个属性的设置通常在代码中控制。
各控件上都有CauseValidationg属性,默认为Ture。当焦点从CauseValidationg属性为Ture的控件转移到另一个CauseValidationg属性为Ture的控件时,将触发Validating事件,通常在这个事件中对控件里的数据做检查,如果不正确可以使用messagebox对话框等方式提示,然后将CancelEventArgs属性设置True,取消焦点的转移。如果没有设置CancelEventArgs属性设置True,将触发Validated事件。当然,因为取消了焦点的转移,所以关闭窗体的按钮也将不能获得焦点而不能实现其作用,导致当没有输入有效数据时将不能执行其他操作。解决这个问题的方法是将其他的按钮(如关闭按钮)的CauseValidationg属性设为False。
阅读(696) | 评论(0) | 转发(0) |