Combobox选择值

时间:2010-12-10 11:45:12

标签: c# winforms combobox

我的表格上有一个组合框(winforms)。在属性中,我设置了DisplayMember和ValueMember。 DisplayMember = Name和ValueMember = ID。 Combobox填充了以下对象:

public class MyObj
    {
        public string Name
        {
            get; set;
        }

        public int ID { get; set; }
    }

名称在下拉列表中显示正常(因此DisplayMember正在工作)但是,当我这样做时:

mycombobox.SelectedValue它始终为null。

有人知道我是否忘记做任何事情?

4 个答案:

答案 0 :(得分:4)

您是否设置了DataSource属性。还要确保您必须按正确的顺序设置它们 -

按以下顺序设置 -

1. DisplayMember
2. ValueMember
3. DataSource

请参阅此链接 - http://social.msdn.microsoft.com/Forums/en/winformsdatacontrols/thread/211a46f5-5971-4ea2-a61d-84e389360909

或者,您可以使用SelectedItem属性来获取所选的MyObj实例。

答案 1 :(得分:0)

尝试SelectedItem

MyObj obj = (MyObj)mycombobox.SelectedItem;

答案 2 :(得分:0)

是否已选择某个项目?选中并不总是与可见相同。也许你真的想要mycombobox.Text。

答案 3 :(得分:0)

我有类似的错误。我设置了DisplayMember和ValueMember,但我设置的不是DataSource Items.Insert。