【发布时间】:2016-08-18 10:06:40
【问题描述】:
所以我有一个由ObservableCollection<> 支持的ListView 控件,它会定期将项目添加到其中。但是我只想显示最多前 10 个项目;也就是说,如果最多有 10 个项目,它会全部显示它们,同时相应地调整大小,如果超过 10 个,它会在第 10 个项目停止显示它们。
我想知道是否有合理的方法来做到这一点,因为我目前的直觉是有第二个集合,它反映 ItemsSource 的前 10 个项目,并相应地更新。
【问题讨论】:
-
不是第二个集合,而是过滤您的集合以仅显示前 10 个项目怎么样?
-
我不知道该怎么做。我需要维护底层集合,所以我怕我不知道将
ListView的ItemsSource绑定到什么,或者如何过滤它拥有的ItemsSource。 -
那么在使用过滤的时候,应该什么时候启动过滤呢?我目前正在尝试在构造函数中实现它,但得到了
NullRefernceErrorException,因为我认为 ItemsSource 尚未设置,因为它被绑定在 Xaml 中并且没有在加载时立即填充。 -
那么您的收藏何时被填充?
标签: c# wpf listview observablecollection