假设现在有一个ComboBox控件,内有若干数据,请写一段代码实现ComboBox控件自动删除重复的数据,例如(请忽略逗号):
a,b,a,b
删除重复项后变成:
a,b

解决方案 »

  1.   

    可以用List
    对集合操作,然后再绑定到ComboBox上
      

  2.   

    在数据库中用distinct函数过滤
      

  3.   

    首先,你是绑定的控件吗?是的话在数据库过滤。如果是手写的控件,可以将内容暂存入DataSet的表中,然后用循环比对,再去掉逗号就好了。
      

  4.   


            private void button1_Click(object sender, EventArgs e)
            {
                List<string> str = new List<string>() { "111", "222", "111" };
                str = RemoveList(str);
                comboBox1.DataSource = str;
                
            }         private List<string> RemoveList(List<string> list)  
             {
                 for (int i = 0; i < list.Count() - 1; i++)
                 {
                     for (int j = list.Count() - 1; j > i; j--)
                     {
                         if (list[j].Equals(list[i]))
                         {
                             list.RemoveAt(j);
                         }
                     }
                 }
                 return list;
              }
      

  5.   

    谢谢unicorn_dsx的细心回答,谢谢大家!
      

  6.   

    使用扩展方法 更简单。 List<string> strList = new List<string>(){"a","b","a","b"};
                this.comboBox2.DataSource = strList.Distinct().ToList();