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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> CheckBox с тремя состояниями, Возможно ли сделать? 
V
    Опции темы
Dblma
Дата 4.3.2009, 13:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Собственно, сабж.

Единственно, CheckBox - сам по себе, а не в составе какого-нибудь DataGrid'а или TreeView.
PM MAIL ICQ   Вверх
Mymik
Дата 4.3.2009, 14:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

Репутация: 50
Всего: 78



Сам такого никогда не делал, но подозреваю, что можно добавить какое-нибудь HiddenField в котором будет прописываться значение dirty после первого нажатия на сам CheckBox. Ну и в самом коде тоже надо будет переопределить свойство Checked и проставлять в нем эту же строчку для dirty...  smile Это как вариант. Возможно и красивее как-то можно сделать.


Цитата(Dblma @  4.3.2009,  13:20 Найти цитируемый пост)
не в составе какого-нибудь DataGrid'а или TreeView
Прочитав это, можно предположить, что такое уже видел ТС. Тогда поковыряйся и пойми как оно работает в составе тех элементов и выкуси то что тебе необходимо. 


--------------------
ICQ ::            857-857
E-mail ::         mymik[at]inbox[dot]ru 
HomaPage ::  http://localhost/

:to_become_senile  :this
PM MAIL WWW ICQ   Вверх
Dblma
Дата 4.3.2009, 16:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Сам по себе CheckBox в ASP.NET (да и вообще в HTML) не имеет 3-го состояния.

К счастью в данном случае он нужен всего в 1 месте - использовал просто ImageButton с меняющимися картинками (костыль, в общем). А так пришлось бы писать свой контрол.

По-поводу этого:
Цитата
Прочитав это, можно предположить, что такое уже видел ТС.

На самом деле не юзал никогда, да и не обращал внимания особо - но предполагаю, что у TreeView (или в подобном контроле) должен быть встроен чекбокс с 3 состояниями - иначе как отображать ЧекБокс, у которого часть потомков зачекены, а часть - нет.
PM MAIL ICQ   Вверх
Любитель
Дата 4.3.2009, 19:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

Репутация: 5
Всего: 92



Стандартный инпут никак не прокатит. Только картинка.

Цитата(Dblma @  4.3.2009,  16:18 Найти цитируемый пост)
использовал просто ImageButton с меняющимися картинками (костыль, в общем)

Не костыль, так как нативного решения нет. Единственное, если речь именно про ImageButton - то это postback на каждый клик smile Реализуй свой контрол. В нём регистришь startup-скрипт, который подгрузит картинки для состояний. В самом контроле - одна картинка и хидден-поле (для хранения состояния элемента и простой отсылки его на сервер). Чтоб было проще - оборачиваешь их в див (ему как ид-шник даёшь ClientID контрола). На клиенте подписываешься на click по картинке, по которому получаешь текущее состояние (значение hidden-поля, являющегося следующем элементом после DOM-элемента картинки), меняешь на следующее, ставишь картинку.

Как-то так smile


--------------------
PM MAIL ICQ Skype   Вверх
Dblma
Дата 5.3.2009, 11:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Приблизительно так и сделал, всем спасибо.
PM MAIL ICQ   Вверх
sobik
Дата 10.3.2009, 16:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 63
Регистрация: 21.3.2008
Где: Киев, Украина.

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



Странно как то звучит Чекбокс с тремя состояниями. Чекбокс по умолчанию предназначен для отображения булевских переменных или битовых : 1 или 0. Если тебе надо сделать что-то что бы отображало три состояния, например: {начальное, сделал,  недоделал}, то, как мне кажеться, уже просто сделать РадиоГруппу с тремя пунктами. Или специфика задачи не позволяет?

Это сообщение отредактировал(а) sobik - 10.3.2009, 16:17
PM MAIL   Вверх
Любитель
Дата 10.3.2009, 16:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

Репутация: 5
Всего: 92



Ну в десктопных же приложениях делают smile Тут вопрос не юзабилити, а технической возможности. Можно и комбобокс сделать с нужными вариантами.


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

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

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

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


 




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


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

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