如何覆盖或隐藏ObservableCollection中的add

本文关键字:隐藏 ObservableCollection 中的 add 何覆盖 覆盖 | 更新日期: 2023-09-27 17:51:19

我想为ObservableCollection<MyType>派生的类重写Add(MyType t)。但是我不能重写Add,为什么?

因此,我添加了AddIem(MyType t)并使用该函数,它工作得很好。但是我想防止有人错误地使用Add,所以我实现了Add(抛出异常)。但这并没有隐藏ObservableCollection的Add方法。知道我为什么以及如何实现我的目标吗?

如何覆盖或隐藏ObservableCollection中的add

让你的ObservableCollection保持私有,并使用一个公共ReadOnlyObservableCollection来公开这些项,它反映了私有集合中的项。

如果您需要向其他类公开一个专门的AddItem方法,您可以使它成为视图模型类的成员,或者您可以子类ReadOnlyObservableCollection并将其放在那里。叫它MostlyReadOnlyObservableCollection。