我有一个程序,我试图通过arrayList
将项目从一个listbox
移动到另一个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);
}
,然后用XML打印出信息,但我遇到的错误是我添加的时候当没有重复时,通常某些时候值会重复。
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";
}
这是我的初始化代码。
{{1}}
这是我添加到另一个数组列表的位置。然而,正如我经常说的那样,项目会重复而不会有所不同,我该如何解决这个问题?
答案 0 :(得分:0)
每次扫描并添加第一个列表中的项目时,请尝试清除第二个列表。
list2.Clear();
for (int i = 0; i < selectionBox.Items.Count; i++)
....
答案 1 :(得分:0)
我已经使用我的班级列表修复了这个问题,似乎没有问题。
List<RandomClass> list2 = new List<RandomClass>();
然后在添加时我只需将以下内容放在if语句
中 list2.Add(m);