我在asp.net webform应用程序中有两个Listbox
LIstBox1具有所有项目的列表,ListBox2已分配项目。
一个页面加载两个ListBox1都填充了所有Project&ListBox2填充了已分配的Project&我有一个按钮从LIstbox2中删除了Assigned Project
var itms1 = ListBox1.Items;
var itms2 = ListBox2.Items;
foreach (var itm in itms2)
{
if (itms1.Contains(itm)) itms1.Items.Remove(itm);
}
我很简单想要将ListBox2与ListBox1进行比较,并从ListBox1中删除匹配的ListBox2值。
我尝试了不同的变化但我不断得到类似的错误或它不会工作。
ListBox将ProjectName显示为Text,将ProjectID显示为列表框值
我在.net framework 4.5上使用asp.net webform应用程序
你可以简单地使用这个:
itms1.RemoveAll( item => itms2.Contains(item));
此代码删除list2中的所有项目
这对我有用
foreach (ListItem itemA in LisyBox2.Items)
{
for (int i = ListBox1.Items.Count - 1; i > -1; i--)
{
{
if (ListBox1.Items[i].Text == itemA.Text)
{
ListBox1.Items.RemoveAt(i);
}
}
}
}