2017-10-19 12 views
-1

データソースを使用せずに、データグリッドビュー内のコンボボックスのアイテムコレクションから値を設定したいとします。DataGridviewでコンボボックスの項目を手動で設定するにはどうすればいいですか?

dtgLineMaster.Rows.Add() 
    dtgLineMaster.Rows(rowcount).Cells(0).Value = reader3.GetString(2) 

ダイアログのエラーを示しています: System.ArgumentExcpection:DataGridViewComboBoxCell値が有効ではありません。 このデフォルトダイアログを置き換えるには、DataErrorイベントを処理してください。

+0

あなたのリストアイテムとあなたのreader3.GetString(2)はおそらく一致しません。どのような値をドロップダウンし、reader3.GetString(2)の値は? – LarsTech

+0

セル値に追加する項目がコンボボックスの項目リストにない場合は、この 'DataError.'が表示されます。エラーメッセージが示すように、' DataGridView'の 'DataError 'イベントがこのエラーをキャプチャし、現在取得しているよりも多くの情報が表示される可能性があります。あなたはコンボボックスの初期項目リストをどのように設定しているとは言いませんか? – JohnG

+0

こんにちは@LarsTech、はい、リストアイテムとreader3.GetString()は一致しませんでした。値にはデータベース内の末尾に空白があるため、一致しませんでした。ありがとう。 –

答えて

0

DataGridViewComboBoxColumnを作成し、のDataGridViewにバインドします。

Dim dgvComboBox As DataGridViewComboBoxColumn = New DataGridViewComboBoxColumn() 
    dgvComboBox.HeaderText = "Select Data" 
    dgvComboBox.Name = "dgvComboBox" 
    dgvComboBox.Items.AddRange(New Object() {"Value 1", "Value 2", "Value 3"}) 
    dtgLineMaster.Columns.Add(dgvComboBox) 
関連する問題