如何将winforms combobox绑定到简单的字符串列表?

如何将winforms combobox绑定到简单的字符串列表?,winforms,data-binding,combobox,Winforms,Data Binding,Combobox,假设我们有一个Customer表单,其属性包括一个简单的字符串字段Country 以下代码的工作原理是将更改后的值正确地写回基础数据源。但在第一次显示时,它无法提取客户的国家/地区;组合框只显示阿尔巴尼亚 Dim bs作为新BindingSource(新列表(字符串)(新字符串(){“阿尔巴尼亚”、“比利时”、“智利”}),无任何内容) 带CountryComboBox .DataSource=bs .DataBindings.Add(新绑定(“SelectedValue”,CustomerBi

假设我们有一个
Customer
表单,其属性包括一个简单的字符串字段
Country

以下代码的工作原理是将更改后的值正确地写回基础数据源。但在第一次显示时,它无法提取客户的国家/地区;组合框只显示阿尔巴尼亚

Dim bs作为新BindingSource(新列表(字符串)(新字符串(){“阿尔巴尼亚”、“比利时”、“智利”}),无任何内容)
带CountryComboBox
.DataSource=bs
.DataBindings.Add(新绑定(“SelectedValue”,CustomerBindingSource,“Country”,True,DataSourceUpdateMode.OnValidation))
以

我没有设置DisplayMember和ValueMember,因为这不适用于简单的字符串列表。但也许我应该?

尝试将新绑定中的“SelectedValue”替换为“SelectedItem

尝试将新绑定中的“SelectedValue”替换为“SelectedItem

尝试删除.DataBindings行。我想你不需要it@Steve如果我想读取并写入基础Customer.Country字段,我当然需要它。您希望它为空吗?或是否存在非空的基础数据?其他人很难测试绑定问题,也许有人会发现问题。@rheitzman我想让它检查客户的国家绑定后是否需要强制更新?请尝试删除.DataBindings行。我想你不需要it@Steve如果我想读取并写入基础Customer.Country字段,我当然需要它。您希望它为空吗?或是否存在非空的基础数据?其他人很难测试绑定问题,也许有人会认识到问题。@rheitzman我希望它能够检测客户的国家/地区绑定后是否需要强制更新?