我想提出:
private void txtbox_startdate_Validating(object sender, System.ComponentModel.CancelEventArgs e)
{}
关键离开事件的功能。离开事件如下:
private void txtbox_startdate_Leave(object sender, EventArgs e)
{}
当然,如果我尝试以这种方式调用它,那就麻烦了:
txtbox_startdate_Validating(sender, e)
引发错误,因为在这种情况下e
是EventArg
,而验证函数需要System.ComponentModel.CancelEventArgs
,因此,我如何将EventArgs
转换为{ {1}}或创建一个以便我可以调用我的验证函数?
答案 0 :(得分:0)
请参阅MSDN:
http://msdn.microsoft.com/en-us/library/system.windows.forms.control.validating.aspx
您无需从txtbox_startdate_Validating
事件调用txtbox_startdate_Leave
事件(或带有验证事件的任何其他控件),因为事件的顺序是从一个事件到另一个事件的一部分。设计。
答案 1 :(得分:-1)
通常无论验证器是什么,您都可以在其上调用Validate()而不是这样做。
http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.basevalidator.validate.aspx
否则,自己只是'新'取消防范 - 它并不特别,构造者是公开的。
http://msdn.microsoft.com/en-us/library/system.componentmodel.canceleventargs.canceleventargs.aspx