Получить свойство ControlToValidate из CustomValidator в программном коде

Я хочу получить свойство ControlToValidate из скрытого кода, вот мой aspx.

<asp:CustomValidator runat="server" ID="custtxtTest" OnServerValidate="custtxtTest_ServerValidate" ControlToValidate="txtTest" ForeColor="Red" Text="*" />

В моем коде позади я хочу получить свойство «ControlToValidate», но это не похоже на действительное свойство источника:

 protected void custtxtTest_ServerValidate(object source, ServerValidateEventArgs args)
    {
    string test = source.ControlToValidate;
    }

Я проверил пользовательский валидатор Asp.Net: как получить свойство controlToValidate в ClientValidationFunction?, но это только для клиентской функции, а не в исходном коде.


person Joe Stellato    schedule 09.11.2013    source источник


Ответы (1)


Это должно работать:

var validator = (source as CustomValidator);
string controlToValidate = validator.ControlToValidate;            
TextBox txt = validator.NamingContainer.FindControl(controlToValidate) as TextBox;

С уважением, Урос

person Uroš Goljat    schedule 09.11.2013