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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> gridview, можно ли добавить comboBox? 
:(
    Опции темы
semi
Дата 31.8.2007, 15:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



существует ли в gridview поле не подобие comboBoxColumn из datagridview&?
или может у кого есть пример, как засунуть комбо бокс в гриду?


попробую спросить по другому... а как-то ерунда получилась... 

каким образом после включения редактирования вместо текстбокса поставить другой элемент? в идеале календарь из ajaxtoolkit?

Это сообщение отредактировал(а) semi - 3.9.2007, 17:30
PM MAIL ICQ   Вверх
semi
Дата 3.9.2007, 17:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



 up smile 
PM MAIL ICQ   Вверх
Mymik
Дата 3.9.2007, 19:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



Код

<asp:GridView>
    <Columns>
        <asp:TemplateField>
            <ItemTemplate>
                <!-- Тут идет код для обычного отображения данных -->
            </ItemTemplate>
            <EditItemTemplate>
                <!-- Тут идет темплейт для режима редактирования -->
            </EditItemTemplate>
        </asp:TemplateField>
    </Columns>
</asp:GridView>

Вот так вот.


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

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


Эксперт
***


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

Репутация: 34
Всего: 170



Да, но это "жесткий" вариант - сразу или весь грид комбобоксами забросать, или столбец целиком... А если нужно выборочно?
Есть такой вариант, программный : через myGridView.Rows[i].Cells[j] добираемся до нужной ячейки и
myGridView.Rows[i].Cells[j].Controls.Add(myCombobox)

Конечно, нужно помнить, что динамический контрол жив в пределах одной обработки. И не забывать при каждом конвейере его заново добавлять... Ну да это обсуждалось уже до зубной боли много smile
(ясен пень)


--------------------
На хорошей работе и сны хорошие снятся.
PM MAIL   Вверх
Mymik
Дата 4.9.2007, 08:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



tol05, По сути ты предлагаешь тоже самое. Т.е. перехватывать событие эдита и добавлять этот бокс.
GridView это не забытый богом контрол. в EditItemTemplate ты тоже можешь добавить server-code. и делать там проверки, выводы и так далее.

ИМХО, лучше добавление контролов держать в одном месте, а не добавлять с разнообразных местах behind-code.  smile 

Но как альтернатива решения это тоже походит :о)  smile 


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

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


Эксперт
***


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

Репутация: 34
Всего: 170



 smile не с той ноги встал?
Цитата(Mymik @  4.9.2007,  08:37 Найти цитируемый пост)
EditItemTemplate ты тоже можешь добавить server-code. и делать там проверки, выводы и так далее

Во-первых, считается не очень хорошим стилем мешать view-level и бизнес-логику. Раньше code-behind классов вообще не было, и код, и разметку тулили на одну страницу. 
Цитата(Mymik @  4.9.2007,  08:37 Найти цитируемый пост)
ИМХО, лучше добавление контролов держать в одном месте, а не добавлять с разнообразных местах behind-code

А чего только про контролы? Лучше вообще код по файлам не разбрасывать  smile   smile 
Короче, это дело вкуса, мне нравится отделенный код. К тому же это масштабируемость повышает. Один класс code-behind  - и десятки страниц с гридами...

Во-вторых, твой метод добавит контролы на этапе построения страницы. А мой - на любом из последующих этапов. Т.е. в результате работы других методов страницы выясняется кол-во вложенных контролов, и куда их, собственно, вкладывать.
 smile 



Это сообщение отредактировал(а) tol05 - 4.9.2007, 09:29


--------------------
На хорошей работе и сны хорошие снятся.
PM MAIL   Вверх
Mymik
Дата 4.9.2007, 10:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



Цитата(tol05 @  4.9.2007,  09:18 Найти цитируемый пост)
smile не с той ноги встал?

Да нет, все нормально 

Цитата(tol05 @  4.9.2007,  09:18 Найти цитируемый пост)
это дело вкуса,

Скорее всего вот это :о). Мне просто иногда немного напрягает вызов функций их с транзитом в 5 разных классов или файлов :о). Потому предпочитаю юзать вызов таких функций прямо в aspx странице. Т.е. ведь тоже можно написать функцию где-нибудь там в behind-code и поставить возвращаемый тип object или T и фперед на мины :о)
Но вобщем-то да, ты прав, это все дело вкуса. Кому как удобнее, да и все зависит от конкретного случая. Некоторые и бизнес логику в сеттерах пишут ;о)


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

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


Шустрый
*


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

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



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

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

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

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


 




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


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

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