如果包含文本,ListView获取索引

时间:2016-09-06 08:11:18

标签: c#

我一直在寻找这一天,却找不到它。 我需要获取ListViewItem的索引,该索引包含其文本中某处的非字符敏感字符串。

我知道有FindItemWithText,但它的区分大小写+搜索只是listviewitem.text的开头

我可以每次迭代ListView,但我希望有一个简单的解决方案。

1 个答案:

答案 0 :(得分:5)

ListView.FindItemWithText区分大小写并不正确。

引用:"搜索不区分大小写。"

但你是对的。它使用此文本搜索开始的项目。

但你可以使用LINQ。您可以使用您需要的任何方法。如果你f.e.想要搜索哪个文本包含您可以使用的特定子字符串的第一个项目:

ListViewItem firstMatchingItem = listview1.Items.Cast<ListViewItem>()
.FirstOrDefault(i => i.Text.IndexOf("foo", StringComparison.CurrentCultureIgnoreCase) >= 0);