powered by simpleCommunicator - 2.0.54     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / DataGridViewComboBoxCell
25 сообщений из 27, страница 1 из 2
DataGridViewComboBoxCell
    #38893084
wild888
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
доброго утра люди) В чём может быть проблема????
вообщем делаю так,
Код: c#
1.
2.
3.
4.
5.
DataGridViewComboBoxCell ComboTextCell = new DataGridViewComboBoxCell();
                ComboTextCell.Items.Clear();
                ComboTextCell.Items.Add("ололо");
                ComboTextCell.Items.Add("тра-та-та");
                dg[0, 0] = ComboTextCell;


так работает норм, отображает список в пизиции 0,0, но я хочу чтобы список выпадающий отображался во всей колонке, ну и пытаюсь прогнать циклом как то так:
Код: c#
1.
2.
3.
4.
5.
              for (int j = 0; j < dg.Rows.Count-1; j++)
                {
                    
                    
                }


далее запускаю приложение он мне исключение выдаёт System Argument Exception: Недопустимое значение DataGridViewComboBoxCell, а потом ещё ошибку выдаёт на эту строчку dg.Rows[j].Cells[4] = ComboTextCell; (Указанные ячейки уже принадлежат к сетке. Выполнение операции невозможно.)
...
Рейтинг: 0 / 0
DataGridViewComboBoxCell
    #38893085
wild888
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
блин косячнул малость
Код: c#
1.
2.
3.
4.
5.
 for (int j = 0; j < dg.Rows.Count-1; j++)
                {
                    dg.Rows[j].Cells[4] = ComboTextCell;
                    
                }

...
...
Рейтинг: 0 / 0
DataGridViewComboBoxCell
    #38894243
wild888
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
можно тогда по другому сформулировать вопрос, КАК наложить треугольник с выпадающим списком на все ячейки в определённой колонке грида и выбранное значение из списка заносить в соответствующую ячейку???
...
Рейтинг: 0 / 0
DataGridViewComboBoxCell
    #38894916
Фотография pation
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wild888можно тогда по другому сформулировать вопрос, КАК наложить треугольник с выпадающим списком на все ячейки в определённой колонке грида и выбранное значение из списка заносить в соответствующую ячейку???
DataGridViewComboBoxColumn
...
Рейтинг: 0 / 0
DataGridViewComboBoxCell
    #38895686
wild888
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
pation, DataGridViewComboBoxColumn мне не подходит...

вроде бы нашол ход решения
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
                DataGridViewComboBoxCell cell = new DataGridViewComboBoxCell();
                cell.Value = "Release";
                cell.Items.AddRange(new string[] { "Trace", "Debug", "Release" });
                
               for (int j = 0; j < dg.Rows.Count; j++)
               {
                 
                   dg.Rows[j].Cells[4].Value=cell.FormattedValue.ToString();
                  
               }  


но ругается теперь на эту строчку
Код: c#
1.
dg.Rows[j].Cells[4].Value=cell.FormattedValue.ToString();

"В экземпляре объекта не задана ссылка на объект."
...
Рейтинг: 0 / 0
DataGridViewComboBoxCell
    #38897052
wild888
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
м.б кто-нибудь знает как столбец DataGridViewComboBoxColumn вставить в уже заполненный грид вместо нужного поля???и чтоб при выборе из списка значение записывалось в то "самое поле"???или до заполнения грида как то корректно
...
Рейтинг: 0 / 0
DataGridViewComboBoxCell
    #38897062
Pallaris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wild888,
вообще непонятно, что ты хочешь. 3 свойства, которые тебе нужны для работы ComboBoxColumn: DataSource (элементы выпадающего списка), DisplayMember (имя поля, которое отображается у элементов выпадающего списка), ValueMember (имя поля значения для элементов выпадающего списка), DataProperty (имя поля, которое является значением для ячейки)
...
Рейтинг: 0 / 0
DataGridViewComboBoxCell
    #38897130
wild888
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
я уже и так сделал
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
DataGridViewComboBoxColumn cell = new DataGridViewComboBoxColumn();
            ad = new SqlDataAdapter("SELECT keys,Оборудование FROM message", con);
            ad.Fill(ds, "message");
            sb = new BindingSource(ds, "message");
            cell.DataSource = sb;//BindingSource
            cell.DisplayMember = "Оборудование";
            cell.ValueMember = "keys";
            //dg.Columns.Insert(4, cell);


только не знаю как мне это поле присвоить полю в гриде который заполнил уже data table
...
Рейтинг: 0 / 0
DataGridViewComboBoxCell
    #38897139
wild888
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
добавил
Код: c#
1.
 cell.DataPropertyName = "Оборудование";

ни как не реагирует
...
Рейтинг: 0 / 0
DataGridViewComboBoxCell
    #38897141
Pallaris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wild888только не знаю как мне это поле присвоить полю в гриде который заполнил уже data table

DataPropertyName у колонки присваиваешь имя нужного поля из DataTable
...
Рейтинг: 0 / 0
DataGridViewComboBoxCell
    #38897200
Pallaris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wild888ни как не реагирует

Потому что ты не то там пишешь
...
Рейтинг: 0 / 0
DataGridViewComboBoxCell
    #38897201
wild888
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Pallaris, вы так имели ввиду??
Код: c#
1.
2.
cell.DataPropertyName = "Оборудование";
           cell.Name = "Оборудование";
...
Рейтинг: 0 / 0
DataGridViewComboBoxCell
    #38897206
wild888
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
сек
...
Рейтинг: 0 / 0
DataGridViewComboBoxCell
    #38897224
wild888
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
DataGridViewComboBoxColumn cell = new DataGridViewComboBoxColumn();
            
            ad = new SqlDataAdapter("SELECT keys,Оборудование FROM message", con);
            ad.Fill(ds, "message");
            sb = new BindingSource(ds, "message");
            
            cell.DataSource = sb;//BindingSource
            
            cell.DisplayMember = "Оборудование";
            cell.ValueMember = "keys";
            cell.DataPropertyName = "Оборудование";
            dg.Columns.Add(cell);


опять где то накосячил я?
...
Рейтинг: 0 / 0
DataGridViewComboBoxCell
    #38897226
Pallaris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wild888,

чем ты заполняешь свой грид?
...
Рейтинг: 0 / 0
DataGridViewComboBoxCell
    #38897229
wild888
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
data table
...
Рейтинг: 0 / 0
DataGridViewComboBoxCell
    #38897232
wild888
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
  dg = new DataGridView();
          //  dg.Visible = false;
            dg.Width = 1000;
            dg.Height = 600;
            this.Controls.Add(dg);
            da = new SqlDataAdapter("SELECT * FROM messages", con);
            SqlCommandBuilder cb = new SqlCommandBuilder(da);
            string[] uchastki = { "База", "СПЦ", "ТЭЦ", "МЦ" };
            comboBox1.Items.AddRange(uchastki);
            comboBox1.Text = "";
            da.Fill(dt);
            dg.DataSource = dt;
            dg.RowHeadersWidth = 65;
            dg.Columns[1].Width = 65;
            dg.Columns[2].Width = 120;
            dg.Columns[3].Width = 300;
            dg.Columns[4].Width = 100;
            dg.Columns[5].Width = 240;
            dg.RowsDefaultCellStyle.WrapMode = DataGridViewTriState.True;
            dg.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells;
           // dg.ReadOnly = true;
           // dg.AllowUserToDeleteRows = false;
           // dg.AllowUserToAddRows = false;

...
Рейтинг: 0 / 0
DataGridViewComboBoxCell
    #38897260
Pallaris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wild888,

я честно говоря не въезжаю, грид ты заполняешь таблицей messages, и в comboboxcolumn тоже пихаешь messages?
...
Рейтинг: 0 / 0
DataGridViewComboBoxCell
    #38897264
wild888
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
нет это две разные таблицы messages -основная и список message
...
Рейтинг: 0 / 0
DataGridViewComboBoxCell
    #38897270
Pallaris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wild888,

а, ну да. Ну так по каким полям связаны таблицы message и messages соответственно?
...
Рейтинг: 0 / 0
DataGridViewComboBoxCell
    #38897275
wild888
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
именно messages и message не связаны, у меня messages связана с users для авторизации пользователя, да я тоже щас на это подумал, но если их так связать в поле где будет список не смогут быть пустые значения так ведь?
...
Рейтинг: 0 / 0
DataGridViewComboBoxCell
    #38897283
Pallaris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wild888именно messages и message не связаны

Так в чем логика? Вот у тебя есть основная таблица с данными - messages. Ты по какой-то колонке хочешь сделать выпадающий список. Обычно это делают, если есть подчиненная таблица-справочник (message), из которой нужно пользователю предоставить выбор. Если это не так, то что ты пытаешься сделать?

если их так связать в поле где будет список не смогут быть пустые значения так ведь


Могут, почему не могут
...
Рейтинг: 0 / 0
DataGridViewComboBoxCell
    #38897293
wild888
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ладно хорошо, создал щас тестовую создал связь один-ко-многим, безрезультатно
...
Рейтинг: 0 / 0
DataGridViewComboBoxCell
    #38897294
Pallaris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мля, поле в DataPropertyName укажи из таблицы messages, а не message
...
Рейтинг: 0 / 0
DataGridViewComboBoxCell
    #38897299
wild888
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
я что-б не ошибиться сделал их одинаковыми "Оборудование"
...
Рейтинг: 0 / 0
25 сообщений из 27, страница 1 из 2
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / DataGridViewComboBoxCell
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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