![]() |
|
Модераторы: gambit |
![]()
|
|
| okaton |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 213 Регистрация: 24.11.2006 Репутация: нет Всего: нет |
Доброго времени суток
Помогите решить проблему. Есть DataGridView1 и DataGridView2, также есть 2 класса. Нужно связать DataGridView1 и DataGridView2 с двумя классами таким образом, что бы когда выбираешь строку в DataGridView1 в DataGridView2 отображались дополнительные данные. После этого организовать связь с dataSet, ну и в нем соответственно сохранять и загружать данные.
|
|||
|
||||
| Partizan |
|
|||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: нет Всего: 67 |
кросспостинг - это не хорошо...
-------------------- СУВ, Partizan. |
|||
|
||||
| okaton |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 213 Регистрация: 24.11.2006 Репутация: нет Всего: нет |
Partizan, может это и не хорошо, но мне нужна реально действенная помощь, причем довольно срочно, а обратится мне больше не куда. И что же мне делать? бублики пинать?
|
|||
|
||||
| MasterOfCode |
|
|||
|
elwin ![]() ![]() Профиль Группа: Участник Сообщений: 740 Регистрация: 24.4.2008 Где: World.Russia.Tyum en Репутация: 4 Всего: 27 |
Это можно сделать так:
Добавлено через 31 секунду Подставь свои классы только -------------------- ![]() |
|||
|
||||
| okaton |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 213 Регистрация: 24.11.2006 Репутация: нет Всего: нет |
MasterOfCode, спасибо большое.
using System.Linq у меня такого нет, это из framework 3? По ходу 3.5 сейчас установлю Это сообщение отредактировал(а) okaton - 14.10.2008, 14:28 |
|||
|
||||
| MasterOfCode |
|
|||
|
elwin ![]() ![]() Профиль Группа: Участник Сообщений: 740 Регистрация: 24.4.2008 Где: World.Russia.Tyum en Репутация: 4 Всего: 27 |
-------------------- ![]() |
|||
|
||||
| okaton |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 213 Регистрация: 24.11.2006 Репутация: нет Всего: нет |
Скажите а MVS 2005 работает с Framework 3.5?
|
|||
|
||||
| okaton |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 213 Регистрация: 24.11.2006 Репутация: нет Всего: нет |
решил скачать MVS 2008
Это сообщение отредактировал(а) okaton - 14.10.2008, 15:49 |
|||
|
||||
| Magnifico |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 418 Регистрация: 23.1.2008 Где: Московская област ь Репутация: 2 Всего: 17 |
MasterOfCode взаимно.
okaton ключевые слова: Nowa + MVS 2008 -------------------- Всё в порядке - спасибо зарядке ! |
|||
|
||||
| okaton |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 213 Регистрация: 24.11.2006 Репутация: нет Всего: нет |
Стесняюсь спросить, а что такое Nowa? Это сообщение отредактировал(а) okaton - 14.10.2008, 21:04 |
|||
|
||||
| Partizan |
|
|||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: нет Всего: 67 |
присоединяюсь к вопросу) Что ещё за Nowa?
-------------------- СУВ, Partizan. |
|||
|
||||
| okaton |
|
||||||||||||||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 213 Регистрация: 24.11.2006 Репутация: нет Всего: нет |
Установил 9 студию
Возникли траблы в отладчике
Ругается на .Where и .ToList<MyParentClass> Это сообщение отредактировал(а) okaton - 15.10.2008, 10:55 |
||||||||||||||||
|
|||||||||||||||||
| Idsa |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2086 Регистрация: 5.12.2006 Где: Томск Репутация: 15 Всего: 62 |
||||
|
||||
| okaton |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 213 Регистрация: 24.11.2006 Репутация: нет Всего: нет |
Idsa, упс, это я действительно проглядел
только почему-то он у меня не подключается:
|
|||
|
||||
| MasterOfCode |
|
|||
|
elwin ![]() ![]() Профиль Группа: Участник Сообщений: 740 Регистрация: 24.4.2008 Где: World.Russia.Tyum en Репутация: 4 Всего: 27 |
Добавь библиотеку в reference
-------------------- ![]() |
|||
|
||||
| Idsa |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2086 Регистрация: 5.12.2006 Где: Томск Репутация: 15 Всего: 62 |
Хм... Для этого нужна библиотека System.Core. Если у Вас действительно стоит VS 2008 и Target Framework выставлен в 3.5, то она должна добавляться автоматически. |
|||
|
||||
| okaton |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 213 Регистрация: 24.11.2006 Репутация: нет Всего: нет |
MasterOfCode, Idsa, спасибо
я проект конвертировал с 2005 на 2008... ну и о нововведения не знал... зашел в свойства проекта и обнаружил подключение framework, соответственно был 2.0, поменял на 3.5 и ура! Подскажите пожалуйста, а как мне теперь заполнить dataSet? |
|||
|
||||
| MasterOfCode |
|
|||
|
elwin ![]() ![]() Профиль Группа: Участник Сообщений: 740 Регистрация: 24.4.2008 Где: World.Russia.Tyum en Репутация: 4 Всего: 27 |
Тебе сначала нужно заполнить DataTable.
Вот ссылка на MSDN DataTable dataSet1.Tables.Add(YouDataTable); Это сообщение отредактировал(а) MasterOfCode - 17.10.2008, 21:38 -------------------- ![]() |
|||
|
||||
| okaton |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 213 Регистрация: 24.11.2006 Репутация: нет Всего: нет |
MasterOfCode, спасибо, буду разбираться
Попутно появились вопросы: 1. А как мне к этой красоте подключить столбцы, которые я нарисовал в дизайнере dataGridView? С этим разобрался, надо в свойстве Колонки DataGridView изменить DataPropertyName подставив член класса 2. Сортировка колонок не происходит, отладчик ругается
Как можно выйти из этого положения? 3. Кто-нибудь пользовался методом System.Data.DataTableExtensions.ToDataTable<T>(IEnumerable<T> source), эту табличку потом можно подключить к dataSet? Это сообщение отредактировал(а) okaton - 16.10.2008, 12:16 |
||||
|
|||||
| okaton |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 213 Регистрация: 24.11.2006 Репутация: нет Всего: нет |
У меня не получается создать новую строку (а тем более правило для создания строк) в таблицах. :(
Как сделать так чтобы можно было создать новую строку в 2 таблицах и соответственно данные в ней привязать к коллекции. Все создание строк работает только на этом этапе
Ну и еще проблема не работает сортировка в dataGridView...
Это сообщение отредактировал(а) okaton - 16.10.2008, 18:44 |
||||
|
|||||
| MasterOfCode |
|
|||
|
elwin ![]() ![]() Профиль Группа: Участник Сообщений: 740 Регистрация: 24.4.2008 Где: World.Russia.Tyum en Репутация: 4 Всего: 27 |
я ошибся в этой строчке, e.ColumnIndex нужно заменить на номер колонки с идишником, в данном случаи на 0. А у грида разрешение на добавление стоит? А у грида разрешение на сортировку стоит? -------------------- ![]() |
|||
|
||||
| okaton |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 213 Регистрация: 24.11.2006 Репутация: нет Всего: нет |
Стоит. Строки можно добавлять и сортировать. Пока я не нажимаю:
Это сообщение отредактировал(а) okaton - 16.10.2008, 20:24 |
||||
|
|||||
| MasterOfCode |
|
||||
|
elwin ![]() ![]() Профиль Группа: Участник Сообщений: 740 Регистрация: 24.4.2008 Где: World.Russia.Tyum en Репутация: 4 Всего: 27 |
Если после повторного нажатия, то возможно из за этого:
Замени на:
-------------------- ![]() |
||||
|
|||||
| okaton |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 213 Регистрация: 24.11.2006 Репутация: нет Всего: нет |
После первого нажатия.
Ругается на сортировку:
e.RowIndex =-1 Строки не добавляются. После изменения при повторном нажатии добавляются 2 строки в dataGridView2 с сохранением данных, но к каждой строке в таблице dataGridView1 Это сообщение отредактировал(а) okaton - 16.10.2008, 21:42 |
||||
|
|||||
| MasterOfCode |
|
|||
|
elwin ![]() ![]() Профиль Группа: Участник Сообщений: 740 Регистрация: 24.4.2008 Где: World.Russia.Tyum en Репутация: 4 Всего: 27 |
В событие CellClick добавь условие:
-------------------- ![]() |
|||
|
||||
| okaton |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 213 Регистрация: 24.11.2006 Репутация: нет Всего: нет |
Добавил. Ошибка соответственно исчезла.
В остальном тоже самое: сортировка не происходит, строки не добавляются
Звездочка после нажатия toolStripButton1_Click также исчезает. Это сообщение отредактировал(а) okaton - 17.10.2008, 19:57 |
|||
|
||||
| okaton |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 213 Регистрация: 24.11.2006 Репутация: нет Всего: нет |
Я не очень понимаю концепцию dataTable. Мне при этом нужна будет коллекция которая у меня сейчас есть или dataTable сама является коллекцией (если это можно так назвать)
|
|||
|
||||
| okaton |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 213 Регистрация: 24.11.2006 Репутация: нет Всего: нет |
Чем можно заменить эту строчку для dataDridView?
вот так
Это сообщение отредактировал(а) okaton - 18.10.2008, 15:34 |
||||
|
|||||
| okaton |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 213 Регистрация: 24.11.2006 Репутация: нет Всего: нет |
В общем я переработал код еще раз:
Это сообщение отредактировал(а) okaton - 20.10.2008, 12:14 |
|||
|
||||
| okaton |
|
||||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 213 Регистрация: 24.11.2006 Репутация: нет Всего: нет |
Теперь как-то нужно опять связать 1 и 2 таблицу и при создании строк предусмотреть обновление Column0_IndexTable1 и Column00_IndexTable2
Автоинкремент работает как-то не правильно, почему он увеличивается если строка не создалась? P.S. А что такое вот это (я понимаю что это первичный ключ таблицы, как его использовать?)
и вот это (тут я понимаю организовываются связи, а как организовать подходящую для меня?)
P.P.S. Можно каким-либо образом воздействовать на dataGridView2_UserAddedRow чтобы при добавлении новой строки в dataGridView2 учитывался этот код, если вставить на прямую соответственно добавятся много не нужных строк
Это сообщение отредактировал(а) okaton - 20.10.2008, 13:20 |
||||||
|
|||||||
| okaton |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 213 Регистрация: 24.11.2006 Репутация: нет Всего: нет |
Судя по всему, эта связь организована правильно, но она почему-то не работает
|
|||
|
||||
| okaton |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 213 Регистрация: 24.11.2006 Репутация: нет Всего: нет |
Походу дело не в DataRelation, а в чем-то другом...
|
|||
|
||||
| okaton |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 213 Регистрация: 24.11.2006 Репутация: нет Всего: нет |
А почему отладчик ругается?
|
||||
|
|||||
| okaton |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 213 Регистрация: 24.11.2006 Репутация: нет Всего: нет |
Ларчик просто открывался
Автоинкремент работает как-то не правильно, почему-то он увеличивается если строка не создалась. Логика-то его мне ясно, но можно ли этого избежать? Это сообщение отредактировал(а) okaton - 21.10.2008, 01:48 |
|||
|
||||
| okaton |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 213 Регистрация: 24.11.2006 Репутация: нет Всего: нет |
Нужно получить все значения колонки Column0_IndexTable1 и создать условие. Если все числа в колонке идут по порядку, то добавить строку = последнее число + 1. Если нет, то добавить строку с числом которого не хватает
Как получить все значения (массив) колонки Column0_IndexTable1 ? Смысл такой колонка Column0_IndexTable1 уникальна, соответственно нужно что бы числа были различны и желательно по порядку (в том числе при загрузке из xml). Если кто-то может предложить другое более удачное решение буду рад |
|||
|
||||
| MasterOfCode |
|
|||
|
elwin ![]() ![]() Профиль Группа: Участник Сообщений: 740 Регистрация: 24.4.2008 Где: World.Russia.Tyum en Репутация: 4 Всего: 27 |
[ИМХО]Сколько не сталкивался - это все глупости. Зачем тебе это? [/ИМХО] -------------------- ![]() |
|||
|
||||
| okaton |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 213 Регистрация: 24.11.2006 Репутация: нет Всего: нет |
Смысл такой колонка Column0_IndexTable1 уникальна, соответственно нужно что бы числа были различны и желательно по порядку (в том числе при загрузке из xml). Если кто-то может предложить другое более удачное решение буду рад smile P.S. в dataDridView2 отображаются данные опирающиеся на Column0_IndexTable1 P.P.S. Почему в 2008 студии не получается совершить такое действие:
в 2005 получается, как же это сделать в 2008 Это сообщение отредактировал(а) okaton - 22.10.2008, 13:27 |
|||
|
||||
| MasterOfCode |
|
|||
|
elwin ![]() ![]() Профиль Группа: Участник Сообщений: 740 Регистрация: 24.4.2008 Где: World.Russia.Tyum en Репутация: 4 Всего: 27 |
Выбирай максимальное и увеличивай на 1. Если будешь писать свой генератор ID на тех условиях что озвучил то он займет кучу времени чтоб выдать тебе нужную циферку, а оно надо пользователю, но мой взгляд пользователям без разницы в каком виде ты хранишь ID, лишь бы работало быстро.
Да, и не мешало бы на каждый вопрос создавать свою тему. -------------------- ![]() |
|||
|
||||
| okaton |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 213 Регистрация: 24.11.2006 Репутация: нет Всего: нет |
Как я получу максимальное значение из колонки, если я не знаю как получить все значения колонки, а обращаться к каждой это наверное неправильно, хотя можно создать цикл
|
|||
|
||||
| masel |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 11.1.2009 Репутация: нет Всего: нет |
Извеняюсь, за глупый вопрос но как? |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, stab, mr.DUDA, Exception. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Базы данных под .NET | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |