![](/img/trans.png)
[英]set DataGridView ComboBoxColumn selectedIndex from DataGridView BindingSource
[英]Create a DataGridView with ComboBoxColumn from a DataTable
我有一个DataGridView
,我想以编程方式填写。 通过创建一个DataTable
,并通过结合它BindingSource
到DataGridView
,在列DataGridView
作为创建TextBoxColumns
。 下面的代码示例:
Dim dataTable As DataTable = New DataTable()
dataTable.Columns.AddRange(New DataColumn() {New DataColumn("TextBoxColumn1"),
New DataColumn("TextBoxColumn2"),
New DataColumn("ComboBoxColumn"),
New DataColumn("TextBoxColumn3"),
New DataColumn("TextBoxColumn4")})
Dim bindingSource As BindingSource = New BindingSource
bindingSource.DataSource = dataTable
dataGridView.DataSource = bindingSource
使“ComboBoxColumn”列成为DataGridView
的ComboBoxColumn
的最佳方法是什么?
我可以手动在DataGridView
创建一个ComboBoxColumn
,然后将其绑定到DataColumn
,但我想知道是否有更好的方法,比如在DataColumn
设置属性或类似的东西。
按照@ Codesleuth的建议,我将自动生成的DataGridViewTextBoxColumn
替换为DataGridComboBoxColumn
如下所示:
Dim comboBoxColumn As DataGridViewComboBoxColumn = New DataGridViewComboBoxColumn()
comboBoxColumn.DataPropertyName = "ComboBoxColumn"
comboBoxColumn.DataSource = comboBoxBindingSource
comboBoxColumn.DisplayMember = "ComboBoxColumn"
comboBoxColumn.ValueMember = "ComboBoxColumn"
DataGridView.Columns.RemoveAt(COLUMN_INDEX)
DataGridView.Columns.Insert(COLUMN_INDEX, comboBoxColumn)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.