【发布时间】:2016-05-03 23:10:09
【问题描述】:
在 C# 中,我有一个 ListBox 和一个 ComboBox。我正在尝试将我的所有项目从我的 ListBox 传输到我的 ComboBox,同时检查项目是否已经存在于 ComboBox 上。重复的项目不应该被转移,而其余的应该从 ListBox 中删除。我还打算将项目从 ComboBox 转移到我的 ListBox 中。
我几乎完成了所有工作,但是删除传输的项目并没有正常工作,因为我遇到了一些索引问题。
我从 List 转移到 Cbx 时的代码
String[] items = intoArrayLst(lstItem2);
ArrayList moved = new ArrayList();
for (int i = 0; i < items.Length; i++)
{
if (!cbxItem.Items.Contains(items.ElementAt(i)))
{
cbxItem.Items.Add(items.ElementAt(i));
moved.Add(items.ElementAt(i));
}
}
for (int i = 0; i < lstItem2.Items.Count; i++)
{
if(moved.Contains(lstItem2.Items.GetItemAt(i)))
{
lstItem2.Items.RemoveAt(i);
}
}
从组合框到列表框
String[] items = intoArrayCBX(cbxItem);
ArrayList moved = new ArrayList();
for (int i = 0; i < items.Count(); i++)
{
if(!lstItem2.Items.Contains(items.ElementAt(i)))
{
lstItem2.Items.Add(items.ElementAt(i));
moved.Add(items.ElementAt(i));
}
}
for (int i = 0; i < cbxItem.Items.Count; i++)
{
if(cbxItem.Items.Contains(moved[i]))
{
cbxItem.Items.RemoveAt(i);
}
}
非常感谢有关如何修复它的一些建议。
【问题讨论】: