WPF列表视图筛选的项目

zour9fqk  于 2022-12-24  发布在  其他
关注(0)|答案(2)|浏览(182)

我有一个列表视图,它是由用户输入的文本过滤。
是否有办法从列表视图中获取可见项?

h4cxqtbf

h4cxqtbf1#

如果您使用virtualization(或稍后介绍),任何依赖于列表项visible属性的解决方案都可能不会返回所有匹配过滤器的项。
更可靠的解决方案可能是对基础集合重新运行 predicate 。

agxfikkp

agxfikkp2#

为了达到您的目的,我提出以下解决方案:
1.
。在视图模型中创建一个列表,其中包含从数据源获取的所有数据。

var myList = new List<string>();

创建一个过滤列表,每当用户输入文本时都会获得该列表,您将根据输入的文本过滤数据。

var filteredList = myList.FindAll(myFilter);

其中myFilter是一种基于某些条件筛选数据的方法。
3.
将筛选列表绑定到列表视图控件的ItemsSource。
因此,您可以访问当前显示的项目。

相关问题