0

我有一个程序,我试图arrayList通过 a 将项目从一个移动到另一个listbox,然后打印出 XML 中的信息,但我遇到的错误是当我经常添加它时,值会重复,当没有重复。

ArrayList list1 = new ArrayList();
ArrayList list2 = new ArrayList();
list1.Add(new RandomClass(var1, var2, var3, var4, var5, var6, var7));
foreach (object o in list1)
{
    RandomClass m = (RandomClass)o;
    selectionBox.Items.Add(m);
}

这是我的初始化代码。

bool req = true;

if (selectionBox.SelectedItem != null)
{
    Count++;
    errorLabel.Text = "";

    for (int i = 0; i < selectionBox.Items.Count; i++)
    {
        if (selectionBox.GetSelected(i) == true)
        {

            RandomClass m = selectionBox.SelectedItem as RandomClass;
            if (m.var2 == ((RandomClass)selectionBox.Items[i]).var2)
            {
                list2.Add(list1[i]);
            }
        }
    }
}
else
{
    errorLabel.Text = "Error";
}

这是我添加到另一个数组列表的地方。但是,正如我经常说的那样,该项目会重复并且不会有所不同,我该如何解决这个问题?

4

2 回答 2

0

每次扫描并添加第一个列表中的项目时,请尝试清除第二个列表。

list2.Clear();
 for (int i = 0; i < selectionBox.Items.Count; i++)
....
于 2013-03-25T22:20:57.097 回答
0

我已经用我的班级列表解决了这个问题,似乎没有问题。

 List<RandomClass> list2 = new List<RandomClass>();

然后在添加时,我只需将以下内容放在 if 语句中

 list2.Add(m);
于 2013-03-25T23:22:10.630 回答