Combobox绑定DataGridView

时间:2010-05-29 18:06:12

标签: c# .net winforms datagridview

我有一个绑定到数据库表的DataGridView控件。我希望gridview中的一个列是组合框类型。组合框应包含硬编码字符串列表,对于datagridview中的所有行都是相同的。我的数据库表中的一个字段是此硬编码字符串列表的索引。

我已经以编程方式向“DataGridViewComboBoxColumn”类型的gridview添加了一个新列,该列成功创建了包含组合框的列。但是,那不会绑定到我的数据库表中的索引字段。

我的数据库表中的索引字段实际上是通过DataAdapter :: Fill方法自动绑定到列的。我已将此列设置为隐藏,因此它对用户隐藏。

显然,在更新dataadapter之前,我可以使用我的组合框的SelectedIndex以编程方式修复我的数据表中的隐藏列。只是想知道是否有更好的方法来做到这一点?

[编辑]
实际上,而不是在更新dataadapter之前这样做,我可能最好使用组合框单元格更改事件来更新隐藏列。不确定我是否在这里回答我自己的问题,或者是否有更好的方法来做到这一点。它似乎确实有效,但只是感觉有点变通。 [/编辑]

谢谢你对此有任何帮助,
丹。

1 个答案:

答案 0 :(得分:5)

如果您需要SelectedValue的{​​{1}}作为索引而不是字符串,请使用自定义对象列表填充ComboBox,而不是字符串列表:

ComboBox