VC ++ 2010搜索listview为某个字符串

时间:2013-12-12 17:41:59

标签: c++ windows visual-c++ clr

我创建了一个listview,我正在添加数据,我想避免重复,所以我在列表视图中搜索之前添加新项目。我在这里发现了一些类似的代码(我想?)

array<ListViewItem^>^ lvHostsSearch = lvHosts->Items->Find(gcnew String(myStr), false);
if(lvHostsSearch->Length == 0)
{
   // Add Item to listbox since it was not found.
}

Find()方法的MSDN页面声明返回值是一个数组:

包含匹配项的ListViewItem对象数组,如果没有匹配项,则为空数组

这就是为什么它测试0长度的数组。虽然它仍然一遍又一遍地添加它?我知道我的逻辑肯定是错的或者看到了错误。任何帮助赞赏!谢谢!

编辑(已解决):

我最终找到了在列表视图中搜索文本的方法。正如在MSDN页面上查看的那样。我最终做了类似的事情:

if(myListView->FindItemWithText(myStr) == nullptr)

希望它可以帮助其他人。

1 个答案:

答案 0 :(得分:0)

答案是使用ListView :: FindItemWithText,阅读here使用它。请参阅上面的编辑,了解我如何解决我的确切问题。