gpt4 book ai didi

c# - 不闪烁地更新 ObservableCollection

转载 作者:行者123 更新时间:2023-11-30 21:46:01 25 4
gpt4 key购买 nike

有人可以帮我吗,我怎样才能不闪烁地更新绑定(bind)到 ListView ItemSource 的 ObservableCollection?当我这样做时:

Contacs = _contacs;

整个ListView都在闪烁。我也想在 ListView 中搜索,但总是在用新结果替换旧结果后,listview 会闪烁。

最佳答案

这里的问题是,您正在重新分配整个集合。这不会利用可观察性并强制 ListView 重新加载所有项目。尝试移除/添加项目,这样 ListView 只需要更新实际更改的项目。

在搜索的情况下,隐藏不匹配的结果也可能是一个可行的解决方案。为此,请在您的联系人类型上创建一个属性(例如称为“IsVisible”)并将其绑定(bind)到 ListViewItems 可见性属性。 (您可能需要在此处构建 BooleanToVisibility 转换器)

更新

正如评论中指出的那样,使用 CollectionViewSource 是实现搜索过滤器的正确 wpf 方式。参见 this回答有关如何使用它的详细信息。

关于c# - 不闪烁地更新 ObservableCollection,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39611046/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com