3

DataGridView の既存の列にドロップダウンを配置しようとしています。Excel ソースから、ドロップダウンが必要な特定の列までグリッドを埋めています。

`

Dim comboBoxColumn As DataGridViewComboBoxColumn = New DataGridViewComboBoxColumn()
DataGridView1.DataSource = dataSetOld.Tables("Old")
comboBoxColumn.HeaderText = "Comments"
comboBoxColumn.Items.Add("Resolution Breach")
comboBoxColumn.Items.Add("Response Breach")
DataGridView1.Columns("Comments").DataGridView.Columns.Add(comboBoxColumn)

`


このコードにより、グリッドに別の列を追加しました。しかし、既存の列へのドロップダウンが必要です。

4

2 に答える 2

0

最初にその古い列を削除する必要があり、その後、Excel から新しい列にデータを入力する必要があります

于 2014-12-22T11:31:39.840 に答える
0
Dim gridComboBox As New DataGridViewComboBoxCell
     gridComboBox.Items.Add("Resolution Breach")       'Populate the Combobox
     gridComboBox.Items.Add("Response Breach")         'Populate the Combobox
DataGridView1.Item(combobox_column, combobox_row) = gridComboBox

列のセルごとに、セルにリンクする前に設定されているコンボボックスをリンクする必要があります。列の名前は、ヘッダー テキストだけでなく、「コメント」にする必要があります。ソース (データベース) から列名を取得します。..あなたの場合:

Dim comboBoxColumn As DataGridViewComboBoxColumn = New DataGridViewComboBoxColumn()
Dim combobox_row as Integer

    DataGridView1.DataSource = dataSetOld.Tables("Old")
    comboBoxColumn.HeaderText = "Comments"
    comboBoxColumn.Items.Add("Resolution Breach")
    comboBoxColumn.Items.Add("Response Breach")
    for combobox_row = 0 to DataGridView1.RowCount - 1
        DataGridView1.Item("Comments", combobox_row) = comboBoxColumn
    next combobox_row
于 2017-04-04T07:47:53.707 に答える