powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / DataGridView в ComboBox
9 сообщений из 9, страница 1 из 1
DataGridView в ComboBox
    #38627967
Алексей Ку.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день, знатоки! Помогите!
Завис на глупой проблеме. У меня есть заполненный DataGridView. И вот все значения определённой колонки мне надо запихать в коллекцию ComboBox в качестве DisplayValue, установив при этом индекс строки грида в качестве ValueMember.
...
Рейтинг: 0 / 0
DataGridView в ComboBox
    #38628038
igr_ok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Алексей Ку.Добрый день, знатоки! Помогите!
Завис на глупой проблеме. У меня есть заполненный DataGridView. И вот все значения определённой колонки мне надо запихать в коллекцию ComboBox в качестве DisplayValue, установив при этом индекс строки грида в качестве ValueMember.
Индекс строки грида не может быть ключевым полем. Это бессмыслица.
...
Рейтинг: 0 / 0
DataGridView в ComboBox
    #38628065
Алексей Ку.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
igr_ok,
Хорошо. Предположим в качестве ключа используется вторая колонка из грида.
...
Рейтинг: 0 / 0
DataGridView в ComboBox
    #38628117
igr_ok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Алексей Ку.igr_ok,
Хорошо. Предположим в качестве ключа используется вторая колонка из грида.

Получаете источник данных вашего DataGridView и привязываете его к ComboBox. Например, так
DataTable dt=(DataTable)DataGridView.DataSource;
ComboBox.DataSource=dt;
и т.д.
...
Рейтинг: 0 / 0
DataGridView в ComboBox
    #38628542
Алексей Ку.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
igr_ok,

При попытке выполнить такой код получаю:

Не удалось привести тип объекта "System.Data.Linq.DataQuery`1[<>f__AnonymousType0`5[System.Int32,System.String,System.String,System.String,System.Nullable`1[System.Boolean]]]" к типу "System.Data.DataTable".
...
Рейтинг: 0 / 0
DataGridView в ComboBox
    #38628693
igr_ok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Алексей Ку.igr_ok,

При попытке выполнить такой код получаю:

Не удалось привести тип объекта "System.Data.Linq.DataQuery`1[<>f__AnonymousType0`5[System.Int32,System.String,System.String,System.String,System.Nullable`1[System.Boolean]]]" к типу "System.Data.DataTable".Значит, вместо DataTable используйте тот тип, который у вас.
...
Рейтинг: 0 / 0
DataGridView в ComboBox
    #38629028
Алексей Ку.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
igr_ok,
А какой у меня тип данных? У меня есть только комбобокс и DataContext запросом из которого заполнен DataGridView.
...
Рейтинг: 0 / 0
DataGridView в ComboBox
    #38630108
Alex Kuznetsov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей Ку.igr_ok,
А какой у меня тип данных? У меня есть только комбобокс и DataContext запросом из которого заполнен DataGridView.Ну, тогда код "заполнения" DataGridView данными из DataContext в студию...
...
Рейтинг: 0 / 0
DataGridView в ComboBox
    #38630821
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
igr_okАлексей Ку.igr_ok,
Хорошо. Предположим в качестве ключа используется вторая колонка из грида.

Получаете источник данных вашего DataGridView и привязываете его к ComboBox. Например, так
DataTable dt=(DataTable)DataGridView.DataSource;
ComboBox.DataSource=dt;
и т.д.
Алексей Ку.igr_ok,

При попытке выполнить такой код получаю:

Не удалось привести тип объекта "System.Data.Linq.DataQuery`1[<>f__AnonymousType0`5[System.Int32,System.String,System.String,System.String,System.Nullable`1[System.Boolean]]]" к типу "System.Data.DataTable".

Тогда, в лоб, так

Код: c#
1.
2.
3.
сomboBox.DataSource=dataGridView.DataSource;
comboBox.DisplayMember = ...;
comboBox.ValueMember = ...;



Но при этом при переходе в гриде в комбобоксе будет выбираться текущий элемент и наоборот.

Если цель в этом, то можно так и оставить.

Если они должны быть независимы, то нужно создать индивидуальный источник

Код: c#
1.
2.
3.
comboBox.DataSource = new BindingSource(dataGridView.DataSource, null);
comboBox.DisplayMember = ...;
comboBox.ValueMember = ...;
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / DataGridView в ComboBox
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]