如何手动在datagridview中设置组合框中的项目?

如何手动在datagridview中设置组合框中的项目?

问题描述:

我想在datagridview中的组合框的项目集合中设置一个值,而不使用数据源。如何手动在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

Hi @LarsTech,是的,列表项和reader3.GetString()不匹配。这些值在数据库中有空白,所以它不匹配。谢谢。 –

创建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)