我的一个库类暴露了一个看起来像这样的属性:
Private _myCollection As New ObservableCollection(Of String)
Public ReadOnly Property MyCollection As ObservableCollection(Of String)
Get
Return _myCollection
End Get
End Property
我对数据绑定知之甚少,但我假设框架会自动通知有关在基础_myCollection
字段中添加/删除项目时的更改(如果我错了,请更正我) )。
我想知道的是当_myCollection
被取消或被其他集合取代时会发生什么:
Sub WhatHappensToMyObservableCollectionWhen(updated As Collection(Of String))
' nulling underlying field
_myCollection = Nothing
' changing underlying field
_myCollection = New ObservableCollection(Of String)(updated)
End Sub
框架是否仍会通知MyCollection
已更改,或者我是否必须实施INotifyPropertyChanged
并在发生这些事情时手动提升PropertyChanged
?
修改
我正在考虑WPF开发人员的这个问题,但我想对PropertyChanged
的所有观察者来说答案都是一样的。如果用WPF编写的GUI绑定到MyCollection
,我希望确保在_myCollection
字段以我所描述的方式发生更改时正确更新。
由于