Проверка родительского элемента управления из дочернего элемента управления ASP.Net - PullRequest
1 голос
/ 26 февраля 2010

У меня есть пользовательский элемент управления, который содержит два текстовых поля, каждое из которых назначено с помощью валидаторов обязательных полей. Этот элемент управления содержит другой пользовательский элемент управления, например, кнопку. При нажатии этой кнопки мне нужно проверить поля из текстовых полей родительского элемента управления.

Я пробую Page.Validate ("ValidationGroup") с Page.IsValid, который он проверяет, но сообщение об ошибке не отображается. Сообщение об ошибке отображается только в том случае, если я пытаюсь проверить его из содержимого, содержащего обязательные поля валидаторов?

Ответы [ 2 ]

1 голос
/ 27 августа 2010

Я столкнулся с той же проблемой только сейчас.

Я решил это, добавив customvalidator под моей ссылкой на usercontrol и проверил usercontrol от родительского элемента, выставив свойства, которые требовали проверки. Я все равно выставлял эти свойства, так что ничего страшного.

<div>
     <uc:MyChildUserControl ID="MyChildUserControl1" runat="server"></uc:MyChildUserControl >
     <asp:CustomValidator ID="MyChildUserControlCustomValidator" runat="server" ValidationGroup="default_validation" ErrorMessage="errormessage to show when the sh*t hit the fan" Text="*"></asp:CustomValidator>
</div>

А затем сервер проверяет код:

protected void MyChildUserControlCustomValidator_ServerValidate(object source, ServerValidateEventArgs args)
{
    args.IsValid = MyChildUserControl1.SomeProperty;
}
0 голосов
/ 15 октября 2011

А у вас установлено свойство ValidationGroup на всех кнопках и TextBox, имеющих одно и то же имя группы проверки? Я использовал группы проверки в нескольких проектах, которые имеют достаточно глубокие пользовательские элементы управления и пользовательские элементы управления и имеют длину

.

ValidationGroup = "CommonName" устанавливается на нажатую кнопку, и все задействованные поля затем корректно отображаются.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...