我的用户控件如下:
<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">
</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指令或程序集引用? )
答案 0 :(得分:-1)
确保以下事件
protected void CustomValidator2_ServerValidate(object source, ServerValidateEventArgs args)
在UserControl( .ascx )后面的代码中声明,而不是 .aspx 表单,您将从此处调用此UserControl。