我一直在寻找这一天,却找不到它。 我需要获取ListViewItem的索引,该索引包含其文本中某处的非字符敏感字符串。
我知道有FindItemWithText,但它的区分大小写+搜索只是listviewitem.text的开头
我可以每次迭代ListView,但我希望有一个简单的解决方案。
答案 0 :(得分:5)
ListView.FindItemWithText
区分大小写并不正确。
引用:"搜索不区分大小写。"
但你是对的。它使用此文本搜索开始的项目。
但你可以使用LINQ。您可以使用您需要的任何方法。如果你f.e.想要搜索哪个文本包含您可以使用的特定子字符串的第一个项目:
ListViewItem firstMatchingItem = listview1.Items.Cast<ListViewItem>()
.FirstOrDefault(i => i.Text.IndexOf("foo", StringComparison.CurrentCultureIgnoreCase) >= 0);