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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Данные из 2 таблиц в одном DataGridView 
V
    Опции темы
maksar
Дата 17.1.2007, 11:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Есть dataset в котором находятся 2 связаные таблицы с полями id,idcat,name и idcat,description.
Как отобразить в datagridview  поля из первой таблицы + поле description по связи idcat-idcat из второй.
примерно вот так id,idcat,name,description.
PM MAIL   Вверх
mr.DUDA
Дата 17.1.2007, 11:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

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



А в дизайнере нельзя добавить колонку на другую таблицу ? Т.е. прямого решения не существует ?


--------------------
user posted image
PM MAIL WWW   Вверх
maksar
Дата 17.1.2007, 13:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Я новичок в НЕТ и в частности АДО.НЕТ , 
Создавал датасет програмно, и заполнял его тоже програмно , через свойство datasource
А как можно через дизайнер накидать колонок из разных таблиц и связать их по связям?

Это сообщение отредактировал(а) maksar - 17.1.2007, 13:10
PM MAIL   Вверх
xess
Дата 9.3.2007, 20:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



кстати, тоже интересует подобный вопрос.
пробывал в дизайнере добавлять колонку на вторую таблицу, не работает  smile 

а суть в следущем:
имеется родительская таблица (id_item, name) и дочерняя (id_item, A, B, C, ...).
как отобразить в datagridview информацию "A, B, C, ..., name", где name из родительской таблице связана с дочерней через id_item?

PM MAIL   Вверх
mr.DUDA
Дата 9.3.2007, 23:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

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



Скорее всего, в базе данных должна быть связь по таблицам, в первую очередь дизайнер туда смотрит. Ну а если нет, то можно программно добавить эту связь туда. Если интересно как - кину пример как.


--------------------
user posted image
PM MAIL WWW   Вверх
xess
Дата 10.3.2007, 07:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(mr.DUDA @ 9.3.2007,  23:03)
Скорее всего, в базе данных должна быть связь по таблицам, в первую очередь дизайнер туда смотрит. Ну а если нет, то можно программно добавить эту связь туда. Если интересно как - кину пример как.

я создавал dataset, в нем устанавливал через дизайнер связи между таблицами.
потом создаю datagridview, в нем в качестве DataSource  указывал свой dataset. Потом перепробывал несколько вариантов и не один не привел к цели :( 
А именно:
1) Пробывал в качестве DataMember у datagridview указывать дочернюю таблицу. Автоматом в дизайнере datagridview добавлялись все колонки из этой таблицы. Потом пробывал в дизайнере добавить еще колонку, чтоб в ней отображались связанные данные из родительской таблице, но вот беда, в дизайнере вообще не было родительской таблицы. Видать из-за того, что я в DataMember прямо указал какую таблицу использовать.
2) Пробывал оставлять DataMember пустым. Но тогда в дизайнере можно было добавлять только unbound colomn. Хотя при этом выбирать можно было данные из всех таблиц. И даже связи в дизайнере отображались (правда только от родительской таблице к дочерней, а мне нужно чтоб отображались данные из дочерней таблице + одно поле из родительской соответсвующей записи). Вобщем в итоге все так и не заработало.

Если знаешь, приведи примеры как можно решить задачу (в дизайнере или вручную).
PM MAIL   Вверх
mr.DUDA
Дата 10.3.2007, 11:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

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



Цитата(xess @  10.3.2007,  06:27 Найти цитируемый пост)
 а мне нужно чтоб отображались данные из дочерней таблице + одно поле из родительской соответсвующей записи). Вобщем в итоге все так и не заработало.

Тогда ставь DataMember на дочернюю (как в пункте 1), а чтобы светить колонку из родительской таблицы - добавь в дизайнере датасета новое поле в дочернюю таблицу, и в свойстве Expression укажи:

Код
Parent.имя_поля_в_родительской_таблице


Потом дело техники - добавляем её в датагрид, т.к. колонка находится в дочерней таблице и доступна для выбора.


--------------------
user posted image
PM MAIL WWW   Вверх
xess
Дата 10.3.2007, 16:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



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

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

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

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


 




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


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

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