1

私のライブラリ クラスの 1 つは、次のようなプロパティを公開しています。

    Private _myCollection As New ObservableCollection(Of String)

    Public ReadOnly Property MyCollection As ObservableCollection(Of String)
        Get
            Return _myCollection
        End Get
    End Property

データバインディングについてはよくわかりませんが、基礎となる_myCollectionフィールドに項目が追加/削除されると、フレームワークが変更について自動的に通知すると想定しています (間違っている場合は修正してください)。

私が知りたいのは、_myCollectionが null になったり、別のコレクションに置き換えられたりするとどうなるかということです:

    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されたときに GUI が適切に更新されるようにしたいと考えています。_myCollection

ありがとう

4

0 に答える 0