【发布时间】:2017-01-23 18:35:36
【问题描述】:
我正在努力过滤列表视图。我尝试了 2 种方法来过滤而不删除选定的项目。 My issue: whenever an selected item disappers because of the filter, it is no longer selected when it comes back. 我的方法:
自写代码:
try
{
string s = isci_tb.Text;
if (isci_tb.Text == "")
{
osebe_listView.Items.Clear();
foreach (Oseba o in seznamOseb)
{
osebe_listView.Items.Add(o);
}
}
else
{
osebe_listView.Items.Clear();
foreach (Oseba o in seznamOseb)
{
if (contejns(o.ime, s) || contejns(o.priimek, s) || contejns(o.mobilnaSt.ToString(), s) || contejns(o.posta, s) || contejns(o.nazivPodjetja, s) || contejns(o.stacionarnaSt.ToString(), s) || contejns(o.naslov, s) || contejns(o.eMail, s))
{
osebe_listView.Items.Add(o);
}
}
}
}
catch { }
它的作用是搜索所有项目并仅显示与过滤器匹配的项目,但此方法完全删除项目并重新添加它们。 我尝试为所选项目添加一个值,该值保存 onSelectionChanged 并在更改过滤器时使用,但它不起作用。
第二种方法来自this tutorial.,我希望它会起作用,因为它使用了过滤器,但显然它也有同样的问题。
【问题讨论】: