私はプリズム/シルバーライトのビューを持っており、それは私のシェルのタブコントロール内のタブアイテムにマッピングされています。 このように見えます。Prism/Silverlightでビューモデルの複数のインスタンスを作成
<sdk:TabControl>
<sdk:TabItem Header="User Portfolio" Regions:RegionManager.RegionName="MainRegion" />
<sdk:TabItem Header="Benchmark Portfolio" Regions:RegionManager.RegionName="BenchRegion" />
</sdk:TabControl>
ビューはデータグリッド、テキストボックス、およびそのようなボタンから構成データグリッドのviewmodelでのObservableCollection、ボタンがクリックされたときに、テキストボックス内のテキストは、データグリッドに追加されるにマップ(および対応しますコレクション)。
ここで、このview-viewmodelペアの複数のインスタンスを宣言したいと思います。つまり、Tabitem "MainRegion"では、1つのインスタンスが必要です。 Tabitem "BenchRegion"で別のインスタンスが必要です
どうすればいいですか?
これはおそらく暗示されていますが、最後にそれぞれのビューをそれぞれの領域に追加する必要があります。別の方法として、ビュータイプを各地域に登録させる方法があります。そのようにリージョンが表示されると、ビューのインスタンス(ビューの依存関係としてビュー・モデルを正しく実行すると、ビュー・モデル)が各リージョンごと自動的に作成されます。 –
はい私は彼が地域を使用していた場合、彼は地域にビューを追加することを知っていたと仮定しました:) –