2012-11-16 75 views
0

我是C#的新手。我有兩個ListBoxes如何比較兩個列表框項目並將常用項目添加到另一個組合框?

   1 listbox --> lbFirstTableColumns 
       2 listbox --> lbSecondTableColumns 
       combo Box --> cmbJoinColumn 

現在我想比較兩個ListBox項目,並添加到cmbJoinColumn這是常見的我Listboxes

我曾嘗試下面的代碼,但它不會給任何結果

public void AddJoinColumns() 
{ 
    try 
    { 
      List<string> lstArray = new List<string>(); 
      //add each items to lstarray 
      for (int index = 0; index < lbFirstTableColumns.Items.Count;  index++) 
      { 
       lstArray.Add(lbFirstTableColumns.Items[index].ToString()); 
      } 
      //compare each listarray item in second listbox if any matching copy into combo box 
      foreach (string str in lstArray) 
      { 
       MessageBox.Show(str); 
       if (lbSecondTableColumns.Items.Contains(str)) 
       { 
        cmbJoinColumn.Items.Add(str); 
       } 
      } 
     } 
     catch (Exception ex) 
     { 
      MessageBox.Show(ex.Message); 
     } 
    } 

回答

1

我希望這會做伎倆..雖然它是一個漫長的過程和老式的。

cmbJoinColumn.Items.Clear() //If you want to remove previous Items. 
for(int intCount = 0; intCount < lbFirstTableColumns.Items.Count;intCount++) 
    { 
     for(int intSubCount = 0;intSubCount < lbSecondTableColumns.Items.Count; intSubCount++) 
     { 
      if (lbSecondTableColumns.Items[intCount].ToString() == lbSecondTableColumns.Items[intSubCount].ToString()) 
      { 
        cmbJoinColumn.Items.Add(lbSecondTableColumns.Items[intCount].ToString()); 
      } 
     } 
} 
0

你可以在這裏試試這個片斷:

List<int> tempList = new List<int>(); 
List<int> cmbGroupList = new List<int>(); 
List<int> dbGroupList = new List<int>(); 
tempList = dbGroupList.Except(cmbGroupList).ToList(); 

tempList將包含名單的差異。

相關問題