【问题标题】:Change The index of a comboBox in windows Application in c# [duplicate]在c#中更改windows应用程序中组合框的索引[重复]
【发布时间】:2017-08-26 14:02:27
【问题描述】:

我有 100 个具有 id 和名称的区域对象,我想在组合框中显示名称,并将它们的 id 作为组合框的索引,但此代码不起作用

private void Areadropdown()//show Areadropdown
    {
        List<Area> list = Area.Dropdown();


        foreach (Area a in list)
        {

          metroComboBox1.Items.Insert(a.Id,a.Areaname);
        }
    }

【问题讨论】:

    标签: c# .net winforms


    【解决方案1】:
     List<Area> list = new  List<Area>();
    
     metroComboBox1.DisplayMember = "PropertyName" //for you want to display in dropdown so give that class property name
     metroComboBox1.ValueMember = "ProprtyName" // use for take  value of those selection 
    
      metroComboBox1.DataSource = list; //your data list
    
    this code help to solve your problem
    

    仅供参考 请参考下面的例子

      districtComboBox.DisplayMember = "Name";
      districtComboBox.ValueMember = "Id";
      districtComboBox.DataSource = districts.Where(d => d.StateId == (int)stateComboBox.SelectedValue).ToList()
    

    【讨论】:

    • 但它的值成员又是通用的,如 0,1,2,3,4...
    • @UmairAhmad 所以你不想显示什么而不是这个 0,1,2,3,4 ??
    • 像区域粮食市场有 id 4000 和上升市场有 id 5000 我需要这些 id 作为价值成员或索引号
    • @UmairAhmad 在您的区域列表中,您通过了 4000 id 的谷物市场,所以它对所有其他人都像魅力一样工作
    • 区域列表包含所有区域的对象。我如何绑定它们..?
    【解决方案2】:

    试试这个

    使用类中定义的属性名称作为显示成员和成员值

    districtComboBox.DisplayMember = "Areaname";
    districtComboBox.ValueMember = "Id";
    

    【讨论】:

    • 但这不能正常工作我的问题仍然没有解决
    • @UmairAhmad 你能详细解释一下你需要什么
    【解决方案3】:

    试试这个(使用 BindingList):

    private void Areadropdown()
    {
      List<Area> list = Area.Dropdown();
      BindingList<Area> areas = new BindingList<Area>(list); 
      metroComboBox1.ValueMember = "Id";
      metroComboBox1.DisplayMember = "Areaname";
      metroComboBox1.DataSource = areas ;
    }
    

    【讨论】:

    • 但它的值成员又是索引号,如 0,1,2,3,4。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-04-14
    • 2023-03-25
    • 2017-01-23
    • 1970-01-01
    • 2014-07-06
    • 1970-01-01
    • 2012-11-03
    相关资源
    最近更新 更多