自定义验证错误

时间:2015-01-06 12:47:53

标签: c# asp.net .net

我的用户控件如下:

    <asp:TextBox ID="_txtLeadDate" runat="server" ReadOnly="true">
    </asp:TextBox>
    <asp:CustomValidator ID="CustomValidator2" runat="server" ControlToValidate="_txtLeadDate" ErrorMessage="You cannot select a day earlier than today!" OnServerValidate="CustomValidator2_ServerValidate" SetFocusOnError="True">&nbsp;
    </asp:CustomValidator>

,服务器端代码为:

protected void CustomValidator2_ServerValidate(object source, ServerValidateEventArgs args){
   if (some condition){
            args.IsValid = false;
   }else{
            args.IsValid = true;
   }
 }

但该页面显示错误:

  

'ASP.usercontrol_preordercontrol_ascx'不包含'CustomValidator2_ServerValidate'的定义,并且没有可以找到接受“ASP.usercontrol_preordercontrol_ascx”类型的第一个参数的扩展方法'CustomValidator2_ServerValidate'(您是否缺少using指令或程序集引用? )

1 个答案:

答案 0 :(得分:-1)

确保以下事件

protected void CustomValidator2_ServerValidate(object source, ServerValidateEventArgs args)

在UserControl( .ascx )后面的代码中声明,而不是 .aspx 表单,您将从此处调用此UserControl。