如何将自定义对象列表绑定到ComboBox?
如何将自定义对象列表绑定到combobox? 这就是我目前所拥有的:
this.classCmbo.DataSource = _viewModel.Coarses; this.classCmbo.DisplayMember = "Name"; this.classCmbo.ValueMember = "Id";
我要显示什么“名称”,但我希望“Id”是与选择相关联的值。 你怎么在winforms中做到这一点?
这是Coarse obj:
public class Coarse { public virtual int Id { get; private set; } public virtual string Name { get; set; } }
谢谢…
你可以尝试这样…..
public class Country { public string Name { get; set; } public IList Cities { get; set; } public Country(string _name) { Cities = new List (); Name = _name; } } List countries = new List { new Country("UK"), new Country("Australia"), new Country("France") }; bindingSource1.DataSource = countries; comboBox1.DataSource = bindingSource1.DataSource; comboBox1.DisplayMember = "Name"; comboBox1.ValueMember = "Name";
我希望它会对你有所帮助……
不确定你的_viewModel.Coarses
究竟是什么,但试试这个?
this.classCmbo.DataSource = _viewModel.Coarses; this.classCmbo.DisplayMember = _viewModel.Coarses.Name; this.classCmbo.ValueMember = _viewModel.Coarses.Id;
要不就
this.classCmbo.DataSource = _viewModel.Coarses; this.classCmbo.DisplayMember = Coarses.Name; this.classCmbo.ValueMember = Coarses.Id;
您通常可以使用ComboBoxItem.Tag进行此类操作。
http://msdn.microsoft.com/en-us/library/system.windows.frameworkelement.tag.aspx