Форум программистов, компьютерный форум, киберфорум
Наши страницы
C#: Базы данных, ADO.NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/21: Рейтинг темы: голосов - 21, средняя оценка - 4.67
Wokinsark
0 / 0 / 0
Регистрация: 29.02.2012
Сообщений: 18
1

Вывод двух связанных таблиц данных в два элемента DataGridView

29.02.2012, 23:00. Просмотров 4222. Ответов 12
Метки нет (Все метки)

Добрый день господа. Возникла маленькая проблема с программой при выводе связанных таблиц. DataGridView выводит требуемую таблицу, но не появляются плюсики возле каждой строки. При нажатии на плюсик должна разворачиваться дочерняя таблица. Вот код:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
public partial class Form1 : Form
    {
        string connectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\Wokinsark\Documents\База данных1.mdb";
        string commandText = "select * from Таблица1";
        string commandText2 = "select * from Таблица2";
 
        public Form1()
        {
            InitializeComponent();
            CenterToScreen();
 
            OleDbConnection conn = new OleDbConnection(connectionString);
            OleDbCommand myCommand = new OleDbCommand();
            myCommand.Connection = conn;
            myCommand.CommandText = commandText;
 
            OleDbDataAdapter dataAdapter = new OleDbDataAdapter();
            dataAdapter.SelectCommand = myCommand;
            conn.Open();
 
            DataSet ds = new DataSet();
            dataAdapter.TableMappings.Add("Table", "Таблица1");
            dataAdapter.Fill(ds);
 
            OleDbCommand myCommand2 = new OleDbCommand();
            myCommand2.Connection = conn;
            myCommand2.CommandText = commandText2;
 
            OleDbDataAdapter dataAdapter2 = new OleDbDataAdapter();
            dataAdapter2.SelectCommand = myCommand2;
            dataAdapter2.TableMappings.Add("Table", "Таблица2");
            dataAdapter2.Fill(ds);
 
            DataColumn dcTo = ds.Tables["Таблица1"].Columns["Телефон 1"];
            DataColumn dcInfo = ds.Tables["Таблица2"].Columns["Телефон 1"];
 
            DataRelation dataRelation = new DataRelation("Дополнительная информация", dcTo, dcInfo);
            ds.Relations.Add(dataRelation);
 
            DataViewManager dsview = ds.DefaultViewManager;
            dataGridView1.DataSource = dsview;
            dataGridView1.DataMember = "Таблица1";           
            
 
            conn.Close();
 
        }
Помогите кто чем может, а то мистика какая-то. Либо я Дурак... Хотя наверное сущность стремится ко второму....
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.02.2012, 23:00
Ответы с готовыми решениями:

Вывод двух связанных таблиц данных в один Datagridview
Если можете подскажите, очень надо:wall: Есть в БД SQL связанные таблицы: 1. Services_direction...

Вывод двух связанных таблиц данных в один элемент DataGridView
Добрый день нашел интересную ссылку про вывод связанных таблиц...

Вывод двух связанных таблиц в datagridview
Добрый день! нашел интересную ссылку про вывод связанных таблиц...

Представление в DataGridView данных из двух связанных таблиц
Здравствуйте. Есть DataSet, в нем две связанных таблицы, например таблица Order, в которой есть...

Вывод данных из двух таблиц в DataGridView
Привет Есть база, в ней 3 таблицы. В 1 таблице хранятся ФИО и ID. Во 2 таблице ID и операция, т.е....

12
Караман
56 / 56 / 10
Регистрация: 27.12.2011
Сообщений: 141
01.03.2012, 17:20 2
Для начала пробей в гугле может ли такое дата грид. В элементе DataGrid из WPF есть что-то подобное, но там при нажатии на плюсик разворачивается подробнаю информация о выбранной строчке... что касается вашей задачи, думаю вам следует немного изощриться и реализовать её доступными вам средствами.
0
_katon_
388 / 243 / 21
Регистрация: 03.10.2011
Сообщений: 1,007
01.03.2012, 17:32 3
В одной из прикрепленных тем описан способ отображение данных для двух связанных таблиц: FAQ по ADO.NET . По-моему грид в windowsforms такого не может))))
0
Караман
56 / 56 / 10
Регистрация: 27.12.2011
Сообщений: 141
01.03.2012, 17:34 4
помести рядом 2 дата грида, к примеру слева общая таблица, а при клике на строчку в общей таблице во второй грид подгружаются данные. Логику сможешь сам реализовать программно... это не сложно
0
01.03.2012, 17:34
serg42
121 / 103 / 7
Регистрация: 14.02.2010
Сообщений: 263
01.03.2012, 18:11 5
Не поддерживает:

The only feature that is available in the DataGrid control that is not available in the DataGridView control is the hierarchical display of information from two related tables in a single control. You must use two DataGridView controls to display information from two tables that are in a master/detail relationship.
0
Петррр
6182 / 3483 / 898
Регистрация: 28.10.2010
Сообщений: 5,928
02.03.2012, 20:19 6
_katon_, я там написал то о чем говорит Караман
0
Wokinsark
0 / 0 / 0
Регистрация: 29.02.2012
Сообщений: 18
02.03.2012, 22:25  [ТС] 7
Спасибо за советы..... Буду думать!
0
_katon_
388 / 243 / 21
Регистрация: 03.10.2011
Сообщений: 1,007
03.03.2012, 04:18 8
Петррр, именно это я и имел ввиду.
0
alexs622
23 / 23 / 12
Регистрация: 04.07.2012
Сообщений: 446
13.11.2014, 07:17 9
Wokinsark вы решили свой вопрос??? У меня тоже не получилось. Такой пример я нашёл в книге. Там отчётливо написано datagridview и что сделано winForms.
0
Wokinsark
0 / 0 / 0
Регистрация: 29.02.2012
Сообщений: 18
14.11.2014, 10:57  [ТС] 10
Сказать честно я изменил логику программы ибо мне это стало не под силу ))))
0
alexs622
23 / 23 / 12
Регистрация: 04.07.2012
Сообщений: 446
26.11.2014, 19:32 11
А в wpf можно сделать похожее?

Добавлено через 22 часа 28 минут
Есть у кого нибудь мысли. Можно в строке dataGrid получить крестик для открытия связанной таблицы.? Grid заполняют через sql запрос
0
shelenaveres
0 / 0 / 0
Регистрация: 09.04.2015
Сообщений: 2
14.05.2015, 23:08 12
Цитата Сообщение от Караман Посмотреть сообщение
помести рядом 2 дата грида, к примеру слева общая таблица, а при клике на строчку в общей таблице во второй грид подгружаются данные. Логику сможешь сам реализовать программно... это не сложно
А вы не могли бы описать подробнее?
0
CyberIslam
12 / 7 / 3
Регистрация: 21.02.2013
Сообщений: 563
24.05.2016, 11:01 13
Решение Вашей проблемы красиво описано в книге Евсеева и Шамшев " Работа с базами данных C#". Но вот там не написано как сделать то же самое в случае Asp.Net Gridview1 и GridView2. Есть у кого информация как настроить источник данных для связанного вывода?
0
24.05.2016, 11:01
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.05.2016, 11:01

Вывод данных из двух таблиц БД в одну dataGridView
В БД две таблицы Reisi и Goroda. Таблицы связаны по полю IDtown. Пытаюсь вывести из таблицы...

Вывод связанных таблиц в DataGridView
Здравствуйте. Имеются три таблицы: Books (со столбцами ID, Name, Author, Genre), Authors (со...

Вывод связанных таблиц в datagridview
Помогите, пожалуйста, мне вот в каком вопросе: На форме находится datagridview. Есть...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru