C# 在c中更改windows应用程序中组合框的索引#
我有100个具有id和名称的区域对象,我想在combobox中显示名称,并将它们的id作为combobox的索引,但此代码不起作用C# 在c中更改windows应用程序中组合框的索引#,c#,.net,winforms,C#,.net,Winforms,我有100个具有id和名称的区域对象,我想在combobox中显示名称,并将它们的id作为combobox的索引,但此代码不起作用 private void Areadropdown()//show Areadropdown { List<Area> list = Area.Dropdown(); foreach (Area a in list) { metroComboBox1.Items.Inser
private void Areadropdown()//show Areadropdown
{
List<Area> list = Area.Dropdown();
foreach (Area a in list)
{
metroComboBox1.Items.Insert(a.Id,a.Areaname);
}
}
private void Areadropdown()//显示Areadropdown
{
列表=区域。下拉列表();
foreach(列表中的区域a)
{
MetroCombox1.项目.插入(a.Id,a.Areaname);
}
}
试试这个
用户类中定义为显示成员和成员值的属性的名称
districtComboBox.DisplayMember = "Areaname";
districtComboBox.ValueMember = "Id";
尝试以下操作(使用BindingList):
private void area下拉列表()
{
列表=区域。下拉列表();
BindingList区域=新的BindingList(列表);
MetroCombox1.ValueMember=“Id”;
MetroCombox1.DisplayMember=“Areaname”;
MetroCombox1.DataSource=区域;
}
但这不能正常工作,我的问题仍然没有解决sloved@UmairAhmad你能更详细地解释一下你需要什么吗?但是它的价值成员同样是通用的,比如0,1,2,3,4…@UmairAhmad,所以你不想显示什么而不是这个0,1,2,3,4??比如区域谷物市场有id 4000和rise markey有id 5000。我需要这些id作为价值成员或索引number@UmairAhmad在你的区域列表中,你是一个id为4000的pass grain market,所以它像charm一样工作。对所有其他区域执行此操作时,区域列表具有所有区域的对象。我如何绑定它们..?但其值成员同样是索引号,如0,1,2,3,4。
districtComboBox.DisplayMember = "Name";
districtComboBox.ValueMember = "Id";
districtComboBox.DataSource = districts.Where(d => d.StateId == (int)stateComboBox.SelectedValue).ToList()
districtComboBox.DisplayMember = "Areaname";
districtComboBox.ValueMember = "Id";
private void Areadropdown()
{
List<Area> list = Area.Dropdown();
BindingList<Area> areas = new BindingList<Area>(list);
metroComboBox1.ValueMember = "Id";
metroComboBox1.DisplayMember = "Areaname";
metroComboBox1.DataSource = areas ;
}