在DataGridViewComboBoxColumn中设置selectedValue

我有两个表:列和表(外键 – Table_ID)。 我想用combobox在dataGridView中显示列。 在combobox中显示相关表(名称表)和所选项是在列中设置的值。

List columns = DataLoader.GetColumns(); List tables = DataLoader.GetTables(); this.editingDataGridView.DataSource = columns; // my dataGridView DataGridViewComboBoxColumn comboBoxColumn = new DataGridViewComboBoxColumn(); comboBoxColumn.DisplayMember = "Table_Name"; comboBoxColumn.ValueMember = "Table_ID"; comboBoxColumn.DataSource = tables; //add combobox column in dataGrid this.editingDataGridView.Columns.Add(comboBoxColumn); //AND this i want set value int index = this.editingDataGridView.Columns.IndexOf(comboBoxColumn); for (int i = 0; i < columns.Count; i++) { this.editingDataGridView.Rows[i].Cells[index].Value = columns[i].Table_ID; } 

运行后,我使用带有dataSource的combobox列获得gridView,但没有选择默认值! 在此处输入图像描述

关键点是

 comboBoxColumn.DataPropertyName = "Table_ID"; 

需要设置dataGridComboBoxColumn的DataPropertyName

更多这个

在vb.net中,我找到了这个解决方案

 Dim cbx As DataGridViewComboBoxCell = dgvEstudios.Rows(x).Cells(1) cbx.Value = Trim("String value")