XML を表すツリービューを持つ WPF アプリケーションに取り組んでいます。XML を XDocument に読み込み、TreeView をこのオブジェクトにバインドします。
MVVM パターンを使用して、 XDocumentの上にViewModelを提供したいと考えています。ViewModel クラスに実装する必要があるものは何ですか。
私が考えているのは、
- TreeView の ContextMenu コマンドにバインドして、ノードの追加、ノードの削除、ノードの変更などを許可する RoutedCommands
- ビューの属性とノード名を実際に変更するロジック。
私は正しい方向に進んでいますか?よりクリーンでモジュール化すると同時に理解しやすくするには、他に何をすべきですか。
RoutedCommands を使用するか、ICommand インターフェイスを実装してコマンドを作成する必要がありますか? CommandBindings に添付プロパティを使用するのはどうですか? 私が話しているツリービューアプリでそれを行うのは理にかなっていますか? これを実装するために利用できるオプションが非常に多いため、少し圧倒されます。
この種のことを行うリンク、サンプルコードを持っている人はいますか? リファレンス実装は?