概述
BindableCollection
但是,它添加了一些有用的额外功能:
- 新增方法:AddRange,RemoveRange,Refresh
- 线程安全
新方法
ObservableCollection
Refresh是一种方便。它不会以任何方式修改集合,但会导致触发PropertyChanged 和CollectionChanged 事件,从而向任何 UI 元素指示集合已被修改,并且它们应重新加载其数据。
线程安全
线程安全是通过向 UI 线程分派所有操作(添加、删除、清除、重置等)来实现的。调度使用Execute.OnUIThreadSync,这意味着:
- 这些操作是同步的:在操作完成之前,调用的方法不会返回。
- 如果您已经在UI线程上,不作处理 - 在这种情况下,操作将同步执行。
- 所有PropertyChanged事件和CollectionChanged事件始终在 UI 线程上引发。
最后一点意味着 BindableCollection
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步