如何将单个组合框添加到随机位置的数据网格视图中

时间:2013-02-06 12:05:30

标签: c# .net vb.net

我想将DatatGridViewComboBoxCell添加到动态确定的单元格中的datagridview上。

到目前为止,我发现的所有示例都要么将整个列的单元格组合成组合框,要么不起作用。

这是我能想到的最简单的例子。我已经尝试过数据绑定到一定程度的工作源。这些项目存在于combobox.items中,但在datagridview上,组合框是空的,您无法选择值

ComboBox with no items being displayed

DataGridArticles.Columns.Add("columna", "columna")
Dim combo As New DataGridViewComboBoxCell

combo.Items.Add("b")
combo.Items.Add("ba")
combo.Items.Add("ca")

DataGridArticles.Rows.Add()
DataGridArticles.Rows(0).Cells(0) = combo

是否可以在数据网格视图中将组合框添加到特定单元格。

1 个答案:

答案 0 :(得分:2)

我从未遇到过DataBound DataGridViewComboBoxCell的任何问题。

我正在使用它:

Dim cell As New DataGridViewComboBoxCell()
cell.DisplayMember = "Name"
cell.ValueMember = "Id"
cell.DataSource = list

DataGridArticles.Rows(0).Cells(0) = cell

cell.Value = 0 //It will select and display item with Id = 0, if you do not set it
               //then combobox will look exactly like yours on image posted (like
               //there is no items in it).

每次使用它都能完美无缺。所以如果它对你不起作用的话。

为了解决您的问题,请在将项目添加到组合框后添加此行:

combo.Value = "b";

希望有所帮助:)