选择组合框值时执行操作

时间:2016-11-07 20:39:25

标签: vb.net combobox datagrid selectedindexchanged

我在做一些看似非常简单的事情时遇到了一些麻烦,但我只是不知道我做错了什么......

在Form_Load上,我用

填充组合框
Datasource
DisplayMember
ValueMember

这里我设置.selectedindex = - 1,以便不选择任何内容。组合框适当地填充,一切都是钟声和口哨。

现在,当用户从下拉菜单中选择某些内容时,我想根据所选的VALUE使用一堆信息填充DataGrid。所以我将ID传递给填充DataGrid的函数。

我正试图这样做......

   Private Sub cbo1_SelectedValueChanged(sender As Object, e As EventArgs) Handles cbo1.SelectedValueChanged
    dim productID as string=""

    cbo1.SelectedValue = ProductID
    Call PopulateProductGrid(ProductID)
End Sub

我也尝试使用SelectedIndexChanged,但对于这两个事件我都收到错误

  

无法在ListControl中将SelectedValue设置为空   ValueMember。

1 个答案:

答案 0 :(得分:2)

我打赌你的问题是你以错误的顺序绑定了。您应该始终设置DataSource最后,而不是第一个。尝试更改它,看看你的问题是否消失。问题是设置DataSource表示控件已绑定,因此在设置DisplayMemberValueMember之前,将选择一个项目并引发相应的事件。