在 Vb.net 中设置 Datagirdviewcombobox 列值
Posted
技术标签:
【中文标题】在 Vb.net 中设置 Datagirdviewcombobox 列值【英文标题】:set Datagirdviewcombobox column value in Vb.net 【发布时间】:2011-06-17 13:10:08 【问题描述】:我有两个 datagridviewcombo 列的数据网格,一列是动态填充,一列具有固定的硬编码值。 问题是我无法设置动态 GridViewComboBox 的值,当我尝试设置它时会生成 continue 错误。
System.FormateException: DataGridViewComboBoxCell 值无效。
我加载网格的代码是
Dim dt As DataTable dt = GetDataTable("Select valuecol,displayCol From mytable") 'GetDataTable gives me datatable cmbAntibiotics.DataSource = dt cmbAntibiotics.DisplayMember = "Antibiotics" cmbAntibiotics.ValueMember = "AntibioticsID"
Dim Index As Integer
Dim dgr As DataGridViewRow
For Each dr As DataRow In dtFromDB.Rows 'This datatable is filled with database
Index = dtFromDB.Rows.Count - 1
GRDAntimicrobials.Rows.Add()
GRDAntimicrobials.Rows(Index).Cells("cmbAntibiotics").Value = dr("AntibioticsID").ToString 'At this point it shows value (1,2,3) rather then showing its display members
GRDAntimicrobials.Rows(Index).Cells("AntibioticsStatus").Value = dr("AntibioticsStatus").ToString
Next
请帮帮我
【问题讨论】:
【参考方案1】:您似乎正在尝试将值分配给单元格上的任何内容,而不是实例化驻留在单元格中的对象然后分配其值。我会尝试这样的事情:
Dim vComboBoxColumn As DropDownList = DirectCast(GRDAntimicrobials.Rows(index).Cells("cmbAntibiotics"))
vComboBoxColumn.Value = dr("AntibioticsStatus").ToString
【讨论】:
以上是关于在 Vb.net 中设置 Datagirdviewcombobox 列值的主要内容,如果未能解决你的问题,请参考以下文章
在 Vb.net 中设置 Datagirdviewcombobox 列值
VB.NET关于datagirdview的数据通过按钮更新到sqlserver,要求代码例子
在开放式办公室计算中提取单元格值以在 VB.net 中设置变量
在 DataGridViewComboBox 下拉列表中设置特定项目的颜色