我在和一个
DataGridView
它有一个由
DataGridViewComboBoxCell
.我的程序填充这些
ComboBoxCells
它会轮询本地数据库中的特定值,并以这种方式进行设置。
这一点我没有问题。
我
是
当我试图以编程方式更改ComboxCell中默认显示的值时,会出现问题。我在引号中加了“默认值”,因为我并没有真正尝试更改单元格的默认值,只是更改用户看到添加到单元格中的列时显示的值
数据表格控件
.
目前,我的程序中出现以下错误:
系统ArgumentException:DataGridViewComboxCell值无效。
现在,我正试图使用以下代码来实现这一点:
Dim dgvcc As New DataGridViewComboBoxCell
For Each row As DataRow In suppliers.Rows
dgvcc.Items.Add(row.Item("Supplier").ToString())
Next
dg.Item("Supplier", rowNum) = dgvcc
dg.Item("Supplier", rowNum).Value = dgvcc.Items.IndexOf(supplier)
关于上述代码的几点注意事项:
-
suppliers
是一个DataTable对象,它保存从数据库检索到的数据
-
rowNum
只是一个整数变量,设置为数据要添加到的行
-
dg
是我的
数据表格控件
对象
现在我已经用调试器运行了这段代码来确认这一点
对
,我试图获取最后一行代码中的索引的值确实存在于组合框列表中。
如果我将最后一行更改为:
dg.Item("Supplier", rowNum).Value = dgvcc.Items(0)
那我就不明白错误了。因此,我的问题似乎是试图将值设置为特定的索引,但我不确定我的代码有何错误。有没有其他方法可以设置
DataGridViewComboxCell
除了我想做的事?
注意:当我用VB编程时。Net,我也会接受C#答案:)