ViewModel のObservableCollectionsにDataTemplatesを介してバインドすることにより、ItemsControlを使用するときの基本的な MVVM 設計アプローチを理解しようとしています。
string、Views、およびViewModelsのObservableCollections にバインドする例を見てきました。
文字列へのバインドはデモ専用のようですが、WPFの威力が本当に出そうなのは「ViewModelのコレクションを含むViewのコレクションを含むViewModel」へのバインドです。
MVVM パターンに精通しているユーザーにとって、ItemsControl、ListView、ListBox を ViewModel のコレクションにバインドするための標準的なアプローチは何ですか? このような経験からのアドバイスを探しています:
- 常に ObservableCollection<...> を使用し、決して List<...> を使用しない...
- コレクションを表示するための ItemsControl よりも優れたものは...
- コード ビハインドの代わりに ViewModel でフィルタリングを機能させるには、...
- ... の場合に View のコレクションを使用し、... の場合に ViewModel のコレクションを使用する
- 90% の時間、ItemsControl を作成し、それを独自の ViewModel を持つ View の ObservableCollection にバインドします...