如何从下拉列表中删除除具有特定值的列表外的所有列表项?

本文关键字:列表 删除 下拉列表 | 更新日期: 2023-09-27 18:12:18

我有一个下拉菜单:myDropDown

和我需要删除所有的listtitem在它的项目集合没有一个值等于'-1' ?

myDropDown.Items. ... // TODO: Remove all ListItems that has a value different than '-1'

我不想创建一个循环等等

我如何以一种最自我文档化的方式实现这一点?我假设用LINQ语句。

谢谢

如何从下拉列表中删除除具有特定值的列表外的所有列表项?

myDropDown.Items = myDropDown.Items.Where(x => x.value != -1);

假设您正在使用System.Web.UI.WebControls.DropDownList,我认为良好的旧for循环是这里的最佳选择:

for (int i = d.Items.Count - 1; i >= 0; i--)
{
  if (d.Items[i].Value != "-1") d.Items.RemoveAt(i);
}