簡體   English   中英

使用DataTable中的ComboBoxColumn創建DataGridView

[英]Create a DataGridView with ComboBoxColumn from a DataTable

我有一個DataGridView ,我想以編程方式填寫。 通過創建一個DataTable ,並通過結合它BindingSourceDataGridView ,在列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”列成為DataGridViewComboBoxColumn的最佳方法是什么?

我可以手動在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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM