jerome dela cruz Ответов: 3

установить DatagridviewComboBoxColumn selectedValue


Всем Привет,

у меня есть проблема с установкой DatagridviewComboBoxColumn selectedValue.

У меня есть сетка, которая имеет 2 DatagridviewComboBoxColum.

пожалуйста, смотрите код ниже.
DataTable datatable = new DataTable(DataSourceTable);
                     datatable = oDbConnection.MYSQLExecuteNonQuery("SELECT  * FROM "+ DataSourceTable , datatable);
                     DataGridViewComboBoxColumn oCol = new DataGridViewComboBoxColumn();

                     oCol.Name = ColumnName;
                     oCol.HeaderText = HeaderText;
                     oCol.DisplayMember = DisplayMember;
                     oCol.ValueMember = ValueMember;
                     oCol.DataPropertyName = ValueMember;
                     oCol.DataSource = datatable;
                     DgView.Columns.Add(oCol);



где ValueMember = "ProjectID"
и DisplayMember = "ProjectDescrption"

у меня нет probelem GETing значение DatagridviewComboBoxColum

проблема заключается в том, что я устанавливаю значение DatagridviewComboBoxColum при загрузке данных в datagridview, который имеет ComboBox из базы данных.

вместо отображения данных DISPLAYMEMBER, comboBox отображает VALUEMEMBER.

спасибо.

3 Ответов

Рейтинг:
2

Member 12604226

в представлении сетки значение свойства ячейки combobox действует как выбранное значение, так и выделенный текст.
если вы хотите установить сетку combo selected value, она принимает только целочисленный тип. если присвоенное значение является строкой, то оно автоматически устанавливает выделенный текст комбинированной сетки.

напр.:

dgv_Sales.Строки[i].Ячейки["grid_cmbUnit"].Value = 1 // эта строка кода устанавливает selectedvalue


dgv_Sales.Строки[i].Ячейки["grid_cmbUnit"].Value = "KG" //эта строка кода устанавливает selectedtext


Рейтинг:
1

Wendelius

Если вы имеете в виду, что combobox показывает данные элемента value (данные из столбца Id) вместо данных из столбца ProjectDescription, то используйте отладчик, чтобы проверить, что ваши переменные (DisplayMember и ValueMember) содержат правильные имена столбцов.

Если вы имеете в виду, что данные отображаемого элемента вообще не отображаются, убедитесь, что имя столбца написано правильно. Если

DisplayMember = "ProjectDescrption"

быть
DisplayMember = "ProjectDescription"


Рейтинг:
1

jerome dela cruz

Привет,

Орфография правильная. я пытаюсь понять, как установить SELECTEDVALUE столбца DatagridViewComboBoxColumn.


согласно MSDN, DatagridViewComboBoxColumn не имеет свойства SELECTEDVALUE, но VALUE.