在控制加载后启用验证器



我有一个包含文本框和asp验证程序的用户控件

<asp:TextBox ID="txtBox" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="vcRequired" runat="server" ControlToValidate="txtBox" ErrorMessage="This field is required."></asp:RequiredFieldValidator>

这是.cs部分:

public partial class CMSTemplates_MyTextBoxNote : System.Web.UI.UserControl
{
    private bool _vRequired;
    public bool ValidateRequired {
        get {
            return _vRequired;
        }
        set {
            _vRequired = value;
            vcRequired.Enabled = _vRequired;
        }
    }
    protected void Page_Load(object sender, EventArgs e) { }
}

因此,当我加载控件时,如果默认情况下启用了验证器,它工作正常。但是,如果默认情况下禁用它(如本例中播种)并启用后的话,尽管我可以从调试器中看到 vcRequried.Enable 设置为 true,但它不起作用。我错过了什么?

谢谢。

试试这个,我想你 您还需要设置 验证必需 = "true" 您的控制器

<uc:myCtrlr  ValidateRequired = "true"... />

和代码后面我不确定这一点

 protected void Page_Load(object sender, EventArgs e) {
     vcRequired.Enabled = _vRequired;
 }

最新更新