1
C#ではListBoxとComboBoxがあります。アイテムが既にComboBoxに存在するかどうかを確認しながら、ListBoxからComboBoxにすべてのアイテムを転送しようとしています。反復されたアイテムは転送されず、残りはリストボックスから削除されます。私はまた、ComboBoxからListBoxに同じ項目を転送することを意図しています。ListBoxからComboBoxへの転送時の項目の事前検証
私はすべての作業をほぼ完了しましたが、転送されたアイテムを削除することは、インデックス作成上の問題があるため、正しく機能しません。
私のコードのListBox
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);
}
}
にコンボボックスから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);
}
}
に一覧から転送それを修正する方法についていくつかの提案を本当にいただければ幸いです。
逆ループのパワーを常に忘れています。ありがとう、これについて考える時間のために私の頭を傷つけている。 –