2013年1月8日火曜日

[C#] KeyedCollection を使って拡張可能な Dictionary を作ってみる

お久しぶりです。 今回も .NET Framework のお話です。

XAML 系テクノロジを使って UI を作成していると、 INotifyPropertyChanged や INotifyCollectionChanged インターフェイスの実装が重要になってきます。
これらを実装しないと ViewModel から View へ変更の通知ができませんから。

そこで時々、INotifyCollectionChanged を実装した Dictionary が欲しくなるんです。


通常の Collection であれば、 System.Collections.ObjectModel.ObservableColleciotn<T> というクラスが用意されているのですが、
残念ながら ObservableDictionary<TKey, TValue> なんてクラスは用意されていません。。