私は3ステップは、私は2つの部分に分かれてMAINVIEW持っている機能問題
を保存実装する必要がありそのための要件があります。
- 左部分をその内部に
TreeView
を有するUserControl
を有する。 - 右部分は、
TreeViewUserControl
で選択された項目に応じてUserControl
をホストするContentControl
を持ちます。
私はあなたに例を挙げます。
リーフノードをクリックすると、データUserControlが入力され、モデル - > ViewModel-> View(UserControl)のそれぞれの選択されたTreeView Itemのデータが設定されます。ユーザーがデータを変更して保存する場合は、を一時的にに保存し、すべての変更をキャンセルした場合は破棄する必要があります。 TreeViewに新しいノードを追加するとき、同じ振る舞いを実証する必要があります。
[ファイル]メニューの[保存]をクリックしたときにのみ、データがシリアル化されてディスクに保存されます。
さらに、ユーザーがナビゲートしようとすると、変更を保存またはキャンセルするまでユーザーが移動しないようにしたいと考えています。
このようなシナリオでは、これらのデータオブジェクトの一時的な状態を保存する際に問題があります。私は浅いコピーを使用しようとしましたが、これは主なEntity(ファイルが読み込まれる時に初期化される)の参照のみを与えるので動作しません。
他の方法はありますか?
あなたのデータはどこから来ていますか、どのような形式ですか? –
テキストの読み上げをしないでください。あなたがそれを十分に行えば、システムはあなたに質問を自動的にブロックします。 – Will