两个List<string> 合并后去除新得到的List里面的重复项?合并可用方法 AddRangs,重复项怎么除掉后将数据绑定到控件上。

解决方案 »

  1.   

    var result = list1.Union(list2);
      

  2.   

    你确定这个可以去重复吗?我是在CS后台代码里做的判断,我的页面上左边有个Table1,中间是两个按钮,一个右移,一个左移。右边是Table2,
    1.我如果选中Table1中的某一行点中间按钮向右移的时候,如果Table2中已经存在该数据就提示禁止添加重复项。2.选中Table2中的某一行,点向左移的按钮可以将这条数据从Table2中移除。有会的大神吗》?
      

  3.   

    我试了下,你的这个方法没有将两个List合并。
      

  4.   

    你的方法不对。你不但可以用union,还有很多办法:var result = list1.Concat(list2).Distinct();var result = list1.AddRange(list2.ToArray()).Distinct();var result = list1.Concat(list2).GroupBy(x => x).Select(x => x.Key);...
      

  5.   

    无疑,1L的办法是最简单的。参考:http://msdn.microsoft.com/zh-cn/library/bb341731.aspx你可以看看例子程序和输出。
      

  6.   

    用Union方法应该是可以的,你再试一下。
      

  7.   

    没有实现我说的那种点按钮的向右移的时候如果重复就提示。移除Table2中的的某一行有什么方法没》?
      

  8.   

    List.Distinct()http://msdn.microsoft.com/en-us/library/bb348436
      

  9.   

    list.Contains()可以判断是否已经存在。
      

  10.   

    别人版主说了那么多方法你还在问没有人会吗没有人做过吗
                List<string> lst = new List<string>();
                List<string> lst2 = new List<string>();            lst.Add("1");
                lst.Add("2");
                lst.Add("3");
                lst.Add("4");            lst2.Add("1");
                lst2.Add("2");
                lst2.Add("5");
                var result = lst.Union(lst2);            foreach (string s in result)
                {
                    MessageBox.Show(s);
                }            lst2.Remove("选中项")//删除
      

  11.   

    var result = list1.Union(list2);
    var result = list1.Concat(list2).Distinct();
    var result = list1.AddRange(list2.ToArray()).Distinct();
    var result = list1.Concat(list2).GroupBy(x => x).Select(x => x.Key);
    ................