我有一个自定义用户控件,其中包含一个文本框和一些其他逻辑/控件,包括一个自定义验证器。在aspx页面上删除我的自定义控件时,我希望能够通过在html中为OnServerValidate属性提供值来将方法附加到控件中的客户验证器。
如何做到这一点?我希望能够将验证方法名称作为属性传递给用户控件的html,而不必通过后面的代码附加到自定义验证器的事件。
答案 0 :(得分:1)
您可以将自定义验证程序的ServerValidate
事件包装到您自己的事件中,然后在标记中将其用于处理程序分配。在你控制中,所需要的只是一个适当的事件声明:
public event ServerValidateEventHandler ServerValidate
{
add { this.CustomValidator1.ServerValidate += value; }
remove { this.CustomValidator1.ServerValidate -= value; }
}
现在在标记中可以注册此活动,同时有效注册自定义验证程序的事件:
<yourTagPrefix:YourControlName
OnServerValidate="YourControlName_ServerValidate"
runat="server"
... />