comboBox——保存valueMember,但显示displayMember



刚刚开始使用VS2013。有几个项目,我是从旧技术移植。这应该是非常简单的,所以我肯定我错过了一些容易的。

组合框用于构建记录。有一个ID字段和一个Description字段。非常简单。我试图显示描述(这是文本),但保存ID(这是int)。

DataSource = table1BindingSource
DisplayMember = Description
ValueMember = ID
Databinding.Text = table2BindingSource.field1

我试过设置

Databinding.SelectedValue = ID

Databinding.SelectedItem = ID

正确显示在下拉菜单中。它使用Description正确地显示在字段中。但是value不能正确地与字段关联,因为我不能保存或移动到下一个记录。看起来Description被放到了字段1中,因为它是int,所以它不接受它。

我错过了什么?

我明白了。对于文本框,我一直在分配

DataBinding.Text = Table1.field

因此,我试图为组合框分配

DataSource = Table1
DisplayMember = Table1.description
ValueMember - Table1.code

DataBinding.SelectedValue = Table1.code
DataBinding.Text = Table2.field

我最后去掉了Text语句并赋值了

DataBinding.SelectedValue = Table2.field

一切都如我所愿。

最新更新