我创建了一个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)
希望它可以帮助其他人。