VB.NET绑定ComboBox SelectedValue不显示

时间:2012-01-05 21:15:51

标签: vb.net combobox

我在加载时将数据表绑定到combobox.DataSource。然后我给组合框一个DisplayMember和一个ValueMember(数据表中有2个不同的列)。在组合框的SelectedIndexChanged中,我想使用组合框的SelectedValue属性,只是为了测试I MsgBox(combobox.SelectedValue),我得到" Argument'提示'无法转换为' String'。"为什么它没有显示价值? :(

OnLoad
    cbCISoftware.DataSource = dbMaps.Tables("maps")
    cbCISoftware.ValueMember = "id"
    cbCISoftware.DisplayMember = "name"

SelectedIndexChanged of cbCISoftware
    MsgBox(cbCISoftware.SelectedValue)

SelectedValue.ToString outputs
    System.Data.DataRowView

2 个答案:

答案 0 :(得分:1)

我认为问题是您需要绑定表的DefaultView:

cbCISoftware.DataSource = dbMaps.Tables("maps").DefaultView

答案 1 :(得分:0)

首先,您必须确保为DropDownList选择了DropDownStyle作为Combobox并且绑定正在运行。

然后你必须替换MsgBox(cbCISoftware.SelectedValue)MsgBox(cbCISoftware.SelectedValue.ToString)

否则为了获得结果,MsgBox(cbCISoftware.Text)将起作用,但它可能不是你想要的: - )

如果您需要,我可以为您提供完整的代码来进行绑定。