【问题标题】:Is it smart to replace ICollection with ObservableCollection<T> wpf ef [closed]用 ObservableCollection<T> wpf ef 替换 ICollection 是否明智 [关闭]
【发布时间】:2020-05-21 09:30:13
【问题描述】:

我是 wpf 应用程序构建和实体框架的初学者。
我正在构建我的第一个 wpf 应用程序,我发现我应该将自动生成的 ICollection 替换为 ObservableCollection
问题是到目前为止我已经完成了大部分代码,但在INotifyPropertyChanged 方面遇到了一些问题。我看到所有关于INotifyPropertyChanged 的代码都使用ObservableCollection

如果我现在转到自动生成的代码并将ICollection 替换为ObservableCollection,会不会很糟糕?它会弄乱我的应用程序吗?

【问题讨论】:

    标签: c# wpf entity-framework observablecollection icollection


    【解决方案1】:

    ObservableCollection 仅在您想在某个时候将项目添加到集合中并让 UI 控件自动更新以显示添加/删除的项目时才有用。 ObservableCollection 还存在潜在的线程问题 - 对集合的任何更改都必须在创建集合的同一线程上完成。

    它与反映集合中单个元素的属性更改无关 - 这就是 INotifyPropertyChanged 的用途。

    【讨论】:

    • 谢谢!我正在构建一个 CRUD 应用程序,因此我将不断更新插入和删除项目。我的问题是我看到很多人使用 ObservableCollection,现在我不知道将 iCollection 更改为 ObservableCollection 是否安全。感谢您的反馈!
    • 这就是为什么你不应该只是盲目地复制你在网上找到的代码。花时间研究使用的每个类及其提供的功能 - 它是否真的与您要解决的问题相匹配。
    猜你喜欢
    • 1970-01-01
    • 2010-12-01
    • 1970-01-01
    • 2011-09-09
    • 1970-01-01
    • 2016-06-05
    • 1970-01-01
    • 2012-06-23
    • 1970-01-01
    相关资源
    最近更新 更多