2013-10-21 45 views
1

我想通过数据集列绑定组合框。组合框没有绑定

我有以下数据集:

enter image description here

我想通过LOCATIONNAME列绑定组合框。

我使用下面的代码是:

cmbLocation.DataBindings.Add(New Binding("Text", dsLocations, "LocationName")) 

但它扔了我以下错误:

Cannot bind to the property or column LocationName on the DataSource. Parameter name: dataMember

请帮助我。

+0

你确定你使用了正确的参数名称替换“的EditValue”? – Kurubaran

+0

是的,我相信 –

回答

2

尝试此结合到ComboBox数据源:

cmbLocation.DisplayMember = "LocationName"; 
cmbLocation.ValueMember = "LocationName"; 
cmbLocation.DataSource = dsLocations; 

更容易和IMO更具有可读性。

+0

如果默认情况下,我想要选择第一个组合值? –

+0

以获得您必须执行的值:'var row = cmbLocation.SelectedItem as DataRow;' – gzaxx

+0

dsLocations.Tables(0)for me –

2

你可以尝试以下方法:

cmbLocation.DataBindings.Add("EditValue", dsLocations, "LocationName", true, DataSourceUpdateMode.OnPropertyChanged); 

如果不工作,用“SelectedText”

+0

无法绑定到DataSource上的属性或列LocationName。参数名称:dataMember –

+0

您确定您正确指定数据源'dsLocations'? –

+0

是的,我确定。 –