我想从selectlistitem中删除一个项目.到目前为止,我还没有取得任何成功
这是代码的快照
使用System.Collections.Generic;
List<SelectListItem> abcd = new List<SelectListItem>();
SelectListItem i1 = null;
i1 = new SelectListItem();
i1.Text = "t0";
i1.Value = "v0";
i1.Selected = false;
abcd.Add(i1);
i1 = new SelectListItem();
i1.Text = "";
i1.Value = "";
i1.Selected = false;
abcd.Add(i1);
i1 = new SelectListItem();
i1.Text = "t1";
i1.Value = "v1";
i1.Selected = false;
abcd.Add(i1);
Run Code Online (Sandbox Code Playgroud)
我试图删除与之匹配的abcd项目之一:
SelectListItem f = new SelectListItem();
f.Selected = false;
f.Text = "t0";
f.Value = "v0";
f.Selected = false;
int x = abcd.IndexOf(f); //return -1
bool b = abcd.Remove(f); //return false
Run Code Online (Sandbox Code Playgroud)
......但它没有删除.我试图找到索引,它总是返回-1因为我不知道特定列表的位置,所以removeat方法无济于事.
非常感谢你的帮助
如果我理解正确,这应该有效.您将需要修改此选项以处理具有要删除的值的多个SelectListItem值的情况,或者如果没有SelectListItem具有您的值.
abcd.Remove(abcd.Where(c => c.Value == "v0").Single());
Run Code Online (Sandbox Code Playgroud)
要么
abcd = abcd.Where(c => c.Value != "v0").ToList();
Run Code Online (Sandbox Code Playgroud)
要么
abcd.RemoveAll(c => c.Value == "v0");
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
9263 次 |
最近记录: |