C# ComboBoxCell包含项目,但不显示任何内容
我有一个DataGridView,它有一个ComboBoxColumn,我在表单设计器中添加了它。在我的代码中,我想添加行,每个行都有单独的ComboBoxCell。这是因为每一行在组合框中具有不同的值 我尝试添加DataGridViewComboxCell项,如下所示,还创建了DataTable并将其绑定到DataGridViewComboxCell。当我运行程序时,我可以看到行和组合框,但当我尝试单击框时,不会显示任何项目C# ComboBoxCell包含项目,但不显示任何内容,c#,winforms,datagridview,datagridviewcomboboxcell,C#,Winforms,Datagridview,Datagridviewcomboboxcell,我有一个DataGridView,它有一个ComboBoxColumn,我在表单设计器中添加了它。在我的代码中,我想添加行,每个行都有单独的ComboBoxCell。这是因为每一行在组合框中具有不同的值 我尝试添加DataGridViewComboxCell项,如下所示,还创建了DataTable并将其绑定到DataGridViewComboxCell。当我运行程序时,我可以看到行和组合框,但当我尝试单击框时,不会显示任何项目 DataGridViewComboBoxCell c
DataGridViewComboBoxCell cell = new DataGridViewComboBoxCell();
DataGridViewComboBoxCell cell2 = new DataGridViewComboBoxCell();
cell.Items.Add("Item1");
cell.Items.Add("Item2");
cell.Items.Add("Item3");
cell2.Items.Add("Item4");
cell2.Items.Add("Item5");
cell2.Items.Add("Item6");
DataGridViewRow row = new DataGridViewRow();
DataGridViewRow row1 = new DataGridViewRow();
row.Cells.Add(cell);
row1.Cells.Add(cell2);
dataGridView1.Rows.Clear();
dataGridView1.Rows.Add(row);
dataGridView1.Rows.Add(row1);
dataGridView1.Refresh();
我在其他帖子中似乎真的找不到解决办法。有人能帮忙把这些东西拿出来展示吗
编辑:DataGridView已设置为禁用编辑,我发现这会阻止我查看组合框项目。在真实的程序中还有其他列,它是只读的,这就是我禁用编辑的原因。我仍然希望用户能够单击并查看组合框项目。确保已从该列的ColumnType中选择DataGridViewComboxColumn 如果尚未添加列,则可以这样添加
DataGridViewComboBoxColumn column = new DataGridViewComboBoxColumn();
column.Name ="cmbItem";
grd.Columns.Add(column);
若您已经添加了该列,那个么您可以直接从combobox单元格的引用中添加项
int rowIndex = grd.Rows.Add();
DataGridViewComboBoxCell oCell = (DataGridViewComboBoxCell)grd.Rows[rowIndex].Cells["cmbItem"];
oCell.Items.Add("Item1");
oCell.Items.Add("Item2");
oCell.Items.Add("Item3");
rowIndex = grd.Rows.Add();
DataGridViewComboBoxCell oCell = (DataGridViewComboBoxCell)grd.Rows[rowIndex].Cells["cmbItem"];
oCell.Items.Add("Item4");
oCell.Items.Add("Item5");
oCell.Items.Add("Item6");
我尝试单击框,但未显示任何项目。我试过你的密码。如果单击箭头,则会显示组合框。因此,请解释哪些项目不是displayed@Sathish单击箭头时,不显示任何项目。DataGridView嵌套在TabControl中,但我认为这不会有任何区别。