关于给datagridview里下拉菜单赋值的问题

qq_28391593 2016-06-05 11:47:27

需要的效果是:
双击a列-->弹出窗体-->选择一条数据strA-->把strA赋给a列,b列是下拉菜单,b显示一个拼接字符: strB+strC,通过strA可查出strB,strC
很着急,VB不太熟,这之前是别人做的我在修改,双击事件是我添加的,能取到 strB+strC,但是赋值给下拉列 的时候报错: DataGridViewComboBoxCell 值无效。报错代码行:xxLst(e.RowIndex).字段C= CType(DataGridView1.CurrentCell, DataGridViewComboBoxCell).EditedFormattedValue
下拉列的显示规则好像是这个:CLst.Add(New KeyValuePair(Of String, String)(c.strB, "[" + c.strB+ "] " + c.strC))
谁能帮帮我,困这里一天了,T T..
  

If DataGridView1.Columns(e.ColumnIndex).DataPropertyName.Equals("字段B") Then

xxLst(e.RowIndex).字段C= CType(DataGridView1.CurrentCell, DataGridViewComboBoxCell).EditedFormattedValue
End If


'双击事件

If Not Lst Is Nothing Then
For Each c In Lst
Application.DoEvents()
DataGridView1.Rows(h).Cells("ColumnB").Value = c.strB + c.strC
Next
DataGridView1.Rows(h).Cells("ColumnA").Value = FrmS.strA
,
...全文
595 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
听楼上的,反正你A列数据要是固定数量,你就一条条赋值进去呗。
XingWae 2016-06-12
  • 打赏
  • 举报
回复
感觉你这个地方出问题了 DataGridView1.Rows(h).Cells("ColumnB").Value = c.strB + c.strC, 根据你的描述 ColumnB 为 combobox cell,应该设置为定义一个 cell1= DataGridViewComboBoxcell,然后将 c.strB + c.strC cell.items.add(c.strB + c.strC ), DataGridView1.Rows(h).Cells("ColumnB")=cell1, .DataGridView1.Rows(h).Cells("ColumnB").value=cell1.items(i), i 为c.strB + c.strC 在 cell1 中的 index。希望能解决你的问题。
轻鸿万里 2016-06-11
  • 打赏
  • 举报
回复
先创建一个DataGridViewComboBox实例,把值赋进去 ,然后再关联到DataGridView1哪个列里去。
大鱼> 2016-06-05
  • 打赏
  • 举报
回复
这个和combobox赋值是一样的,绑定数据源

16,554

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧