2011-02-28 17 views
1

Silverlight OOBアプリケーションのログイン画面からダッシュボードに移動します。Caliburn.MicroでViewModelを別のViewModelにナビゲートする方法は?

私はCaliburn.Microを使い始めましたが、私が使うことができるのは疑いがあります。Conductorです。または私は何かを逃している?

:もともと意図したとおり、私はConductorコンストラクタを変更しました。これはあなたの質問を校正しないために得られるものです。

答えて

3

ログイン画面を表示するにはいくつかの方法がありますが、おそらくあなたのShellViewModelからそれを開始するのが最も良い方法です。したがって、ShellViewModelは抽象化(ILoginViewModel)として注入するか、代わりに抽象ファクトリを使用して、ShellViewModelコンストラクタに注入することができますLoginViewModelに依存します。

いずれかの方法でおShellViewModelであなたLoginViewModelのインスタンスを持っていたら、あなたはどちらかのモーダルダイアログボックスとして表示することができます(Caliburn.Micro WindowManager.ShowDialogメソッドを使用している場合には - IWindowManager抽象化として、この依存関係を注入)、シェルビューの主要コンテンツ領域の一部としてログインビューを表示すると、ShellViewModelが指揮者になり、ActivateItemメソッドでLoginViewModelのインスタンスがアクティブになります。

LoginViewModelからモーダルダイアログまたは実行ビューとして入力を受け取ったらShellViewModelを導体として使用してDashboardViewModelを適切に表示できます。

+1

申し訳ありませんが、導体の代わりにコンストラクタをタイプしたことに気付いたばかりです。本当に申し訳ない。私は吹き喉のために昨日投薬を受けていましたが、私は質問を校正していません。それでも、あなたは答えてくれました。 –

関連する問題