Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Валидация на Enabled состояние 
:(
    Опции темы
Larrr
Дата 19.11.2008, 11:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 128
Регистрация: 29.1.2006
Где: Прага

Репутация: нет
Всего: 2



Уважаемые, есть ли способ проверить валидатором (не Custom), что состояние моего ДропДауна Enabled? В смысле написать кастом валидатор, конечно, можно, если нет другого выбора, но операция выглядить довольно просто, так что может существуют способы попроще?
PM MAIL WWW ICQ   Вверх
Idsa
Дата 19.11.2008, 11:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2086
Регистрация: 5.12.2006
Где: Томск

Репутация: 15
Всего: 62



Larrr, стандартные валидаторы предназначены для работы с TextBox'ами. Так что проверить DropDown нельзя.
Я так понял, Вам нужно проверить Enabled только на сервере? Тогда CustomValidator будет очень простой.


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
Larrr
Дата 19.11.2008, 11:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 128
Регистрация: 29.1.2006
Где: Прага

Репутация: нет
Всего: 2



Что-то не то. Сделала валидацию на стороне сервера как написано тут

Код

 private void DropDownEnabled_Validation(object sender, ServerValidateEventArgs e)
        {
            e.IsValid = TypeDropDown.Enabled;
        }


Код

<asp:CustomValidator OnServerValidate="DropDownEnabled_Validation" ID="CustomValidator1" runat="server" ErrorMessage="CustomValidator" Display="Dynamic"></asp:CustomValidator>


Программа падает на ошибке 

CS1061: 'ASP.mypage_aspx' does not contain a definition for 'DropDownEnabled_Validation' and no extension method 'DropDownEnabled_Validation' accepting a first argument of type 'ASP.mypage_aspx' could be found

Доктор, что это?

UPD: Без особой надежды поменяла private на protected и оно заработало. Насколько я понимаю, в partial class видимость начинается от protected (для соседней половины)?

Это сообщение отредактировал(а) Larrr - 19.11.2008, 12:00
PM MAIL WWW ICQ   Вверх
Idsa
Дата 19.11.2008, 12:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2086
Регистрация: 5.12.2006
Где: Томск

Репутация: 15
Всего: 62



Цитата(Larrr @  19.11.2008,  15:57 Найти цитируемый пост)
Без особой надежды поменяла private на protected и оно заработало. Насколько я понимаю, в partial class видимость начинается от protected (для соседней половины)?

Все правильно, нужно поменять на protected. Partial class'ы здесь не причем: из кода разметки формируется класс, который наследуется от класса CodeBehind, поэтому private метод и не виден.


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
Groff
Дата 19.11.2008, 13:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 51
Регистрация: 31.10.2006
Где: Belarus, Minsk

Репутация: 2
Всего: 3



Цитата(Idsa @  19.11.2008,  11:17 Найти цитируемый пост)
Larrr, стандартные валидаторы предназначены для работы с TextBox'ами.

Ну здрасьте smile
PM ICQ MSN   Вверх
Idsa
Дата 19.11.2008, 13:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2086
Регистрация: 5.12.2006
Где: Томск

Репутация: 15
Всего: 62



Да, с TextBox'ами я переборщил.
Цитата

The standard controls that can be validated are: 
System.Web.UI.WebControls..::.DropDownList 
System.Web.UI.WebControls..::.FileUpload 
System.Web.UI.WebControls..::.ListBox 
System.Web.UI.WebControls..::.RadioButtonList 
System.Web.UI.WebControls..::.TextBox 
System.Web.UI.HtmlControls..::.HtmlInputFile 
System.Web.UI.HtmlControls..::.HtmlInputPassword 
System.Web.UI.HtmlControls..::.HtmlInputText 
System.Web.UI.HtmlControls..::.HtmlSelect 
System.Web.UI.HtmlControls..::.HtmlTextArea 

В любом случае стандартными валидаторами необходимой функциональности не добиться.

Это сообщение отредактировал(а) Idsa - 19.11.2008, 13:35


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
Larrr
Дата 19.11.2008, 15:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 128
Регистрация: 29.1.2006
Где: Прага

Репутация: нет
Всего: 2



Idsa, спасибо.
PM MAIL WWW ICQ   Вверх
PashaPash
Дата 19.11.2008, 15:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1233
Регистрация: 3.1.2008

Репутация: 7
Всего: 49



Larrr, вообще валидаторы предназначены для проверки введенных пользователем данных. Пользователь не может поменять Enabled у дропдауна. TypeDropDown.Enabled ты скорее всего меняешь в click/change обработчике события и валидация отработает до этого обработчика. Поэтому лучше проверять данные прямо в функции валидации, и потом в обработчике перед включением дропдауна проверять IsValid.
Но можно оставить как есть. smile


--------------------
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Любитель
Mymik
mr.DUDA

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Любитель, Mymik, mr.DUDA.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка под ASP.NET | Следующая тема »


 




[ Время генерации скрипта: 0.0966 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.