C# 从后端代码使验证器工作

C# 从后端代码使验证器工作,c#,asp.net,validation,C#,Asp.net,Validation,我添加了一个regex验证程序,但它没有在页面上显示任何内容,基本上验证是在其他地方完成的,我只需要启动它。这是验证器 <div> <asp:RequiredFieldValidator ID="RegularNoCardAccepted" runat="server" ControlToValidate="txtCreditCardNumber" CssClass="Error" Display

我添加了一个regex验证程序,但它没有在页面上显示任何内容,基本上验证是在其他地方完成的,我只需要启动它。这是验证器

    <div>
       <asp:RequiredFieldValidator 
        ID="RegularNoCardAccepted" runat="server"    
        ControlToValidate="txtCreditCardNumber" 
        CssClass="Error" Display="Dynamic">
        </asp:RequiredFieldValidator>
    </div> 

ASP.NET FieldValidator在POST事件上自动工作(假定Enabled属性设置为true)。下面是一个使用示例:

为什么不动态编写验证程序
  if (CardNotAccepted())
        {
  //Find the validator located somewhere in the master page.
  RequiredFieldValidator reqVal = 
  FindControlRecursive(this.Page.Master, "RegularNoCardAccepted") 
  as RequiredFieldValidator;

                    if (reqVal != null)
                    {
                        //The code goes through here but it never shows.
                        reqVal.Enabled = true;
                        reqVal.Text = "Credit Card Type is not accepted";
                        reqVal.Visible = true;
                        reqVal.Validate();
                    }
                    return;
                }