オブジェクトViewModelsから派生したものがいくつかあり、 from から派生しました。ScreenShellViewModelConductor<T>.Collection.OneActive
次のような新しいActivateItemリクエストを行う場合:
ActivateItem(new AViewModel());
関連付けられたビューが myContentControlでアクティブになります。その後、別のリクエストを行う場合:
ActivateItem(new BViewModel());
AViewModelありますがdeactivated、閉じた状態でもあります。BViewModelactiveAViewModel
が閉じられないようにするために、ViewModel既にインスタンス化されたインスタンスをActivateItemメソッドに渡すことにしました。これは私が望むように動作するようです。
ViewModel私の質問は、既に作成された s をどのように追跡するかです。常に新しいインスタンスを作成したいわけではありません。この理由は、ユーザーが別の場所に移動して戻ってきView\ViewModelた場合でも、の状態を維持したいからです。Viewでそれらを維持するか、CollectionでShellViewModelを使用するItems CollectionことができますConductor。
どちらかが正しい場合、または私の問題に対するより良い解決策がある場合、これらのうちどれが正しいですか?