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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как работать с comboBox. comboBox + DataGridView + bind 
:(
    Опции темы
shark1
Дата 11.5.2008, 18:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Подправьте плизз.Вдруг понадобилось чтоб в comboBox-е были названия CompanyName из ДБ.Делаю так:
Код

this.cmb_Customer.DropDownStyle = ComboBoxStyle.DropDownList;
     this.cmb_Customer.DataSource = ds.Tables["ItemsNumber"];
                this.cmb_Customer.DisplayMember = "CompanyName";
                this.cmb_Customer.ValueMember = "ID";

но как то оно все криво работает,и как добиться чтоб если например в базе несколько раз(много раз) поподается  одно и тоже название фирм чтоб в comboBox я видел только одно(одну строку),а в базе я видел только соответствующие строки для выбранной строки в comboBox.Зарание спасибо.



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


Опытный
**


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

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



ХМ... Я так понял у тебя структура БД не хорошая. В комбо бокс ты биндишь объекты, которые не должны повторяться, зачем пользователю видеть несколько одинаковых записей в комбобоксе. Если у тебя все таки есть повторяющиеся записи, которые отображаются, то даже если ты повторяющиеся скроешь, то с вероятностью 99% у тебя будет логическая ошибка взятия поля. Дальше узнать выбранную запись так combobox.SelectedValue. Там будет именно то значение которое ты прописал что надо хранить в ValueMember. Отсюда вывод, фирмы должны храниться в отдельном справочнике, который ты и забиндишь в комбо бокс. Иначе ты не получишь третьей нормальной формы для БД, которая в принципе является стандартной. ДАвай БД, тогда точнее скажу.
PM MAIL ICQ   Вверх
akizelokro
Дата 12.5.2008, 08:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Крокодил
**


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

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



Shark1, я тебе советовал вытащить Companies в отдельный справочник. Это жесткое правило проектирования БД: категория данных, в которых значения могут повторяться произвольным образом и при этом не образуют жёсткий набор возможных значений ( к которым относится да/нет, муж./жен., и прочие), должна быть выделена в справочник (отдельную таблицу с уникальным идентификатором, чаще всего числовое поле с автоинкрементом, и расшифровкой, чаще всего текстовое поле, для которого создается дополнительный уникальный индекс).
Практическую полезность ты видишь сам. Сейчас тебе придется править структуру базы данных и писать запрос по конвертации данных, если ты хочешь их сохранить.  Оцени затраты времени


--------------------
a = a + b; b = a - b; a = a - b;
PM MAIL   Вверх
shark1
Дата 12.5.2008, 08:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Да akizelokro ты прав.Хотел как лучше а получилось как всегда.Спасибо,буду переделывать.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
stab
mr.DUDA
Exception

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

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

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


 




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


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

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