【发布时间】:2016-12-15 19:10:39
【问题描述】:
我正在构建一个具有DataGridView 的 Winforms 应用程序。 DataGridView 未绑定到数据源。我的网格上有一个comboboxColumn,我正在使用datatable 填充它。
当我尝试检索 comboBoxCell 的 selectedValue 时,它给出的是第一个匹配的值,而不是确切的选定值。
Convert.ToString((datagridview1.Rows[i].Cells["columnName"] as DataGridViewComboBoxCell).Value)
例如, 组合框数据表是
DisplayMember 值成员 橙1111 苹果2222 香蕉3333 苹果 4444 番石榴 5555现在,如果我选择 ID 为 4444 的 Apple,上面的代码将获得 ID 为 2222 的 Apple。
我尝试执行下面链接中给出的步骤,但这是给出索引而不是值。
【问题讨论】:
-
如果你只是打电话给
DataGridView1.Rows[i].Cells["columnName"].Value。但是你的代码看起来也不错。只是为了测试。我总是按照我写的那样使用。也许在这种情况下它会起作用。并确保您输入ValueMember。 -
是的,我试过了。但是,如果存在具有不同 ValueMember ID 的重复值,它会给出组合框列表中的第一个值,而不是实际选择的值。
标签: c# winforms datagridview datagridviewcomboboxcell