1

いくつかのクラスによって操作される ObservableCollection があります。イベントを発生させたクラスを知りたい。私はすでに送信者オブジェクトを見て、NotifyCollectionChangedEventArgs のプロパティを調べましたが、何も見つかりませんでした。リセット、追加、または削除などのイベントの理由のみを取得します。私が探しているのはオリジネーターです。

private void OnCollectionChanged(object sender, NotifyCollectionChangedEventArgs e){
    // if coming from one class do something

    // else if coming from another class do something else
}

これの目的は、コレクションを変更したクラスに応じて、コレクションが異なる方法で動作する必要があることです。

4

1 に答える 1

2

それ無理。本当にそうする必要がある場合は、コレクションに入れるオブジェクトのタイプを変更して、作成者を示すある種の「所有者」プロパティを追加できます。

于 2015-04-17T15:08:23.220 に答える