私はさまざまなプリズムの機能を学習していますが、今は新しいウィンドウを開いています。 私のアプリケーションのシェルには、マスター領域と詳細領域があります。 シェルのマスター領域には、詳細領域のプロパティを表示するアイテムが表示されたDataGridがあります。 私が必要とするのは、マスタ領域の項目をダブルクリックしてウィンドウの新しいインスタンスを作成する方法です。 新しいウィンドウはすべて閉じることができます。そのため、マスター領域の他のアイテムをクリックして他のウィンドウを開くことができます。前MVVMプリズム時代にプリズムMvvm Mefインタラクティブウィンドウを開く新しいインスタンス
は、私はおそらくのようなものだろう:
ICollection<Window> MyWindows = new List<Window>();
var wnd = MyWindows.SingleOrDefault(x => x.Name == id.ToString());
if (wnd == null)
{
wnd = new MyWindow(this, id);
MyWindows.Add(wnd);
}
wnd.Show();
をしかし、これはシェルのViewModelにし、プリズムから無行くではありません...
のようなものを使用していました私のシェルXAMLからInteractionRequestTrigger:
<prism:InteractionRequestTrigger SourceObject="{Binding CyberPopUpViewRequest, Mode=OneWay}">
<prism:PopupWindowAction>
<prism:PopupWindowAction.WindowContent>
<views:CyberPopUpView />
</prism:PopupWindowAction.WindowContent>
</prism:PopupWindowAction>
</prism:InteractionRequestTrigger>
しかし、これは私が唯一の単一のウィンドウを作成することができます。
感謝を私は考えていなかったとして、これをチェックしますウィンドウの作成を有効にします。新しいウィンドウで新しいレイアウトに新しいプリズム領域を定義することは可能でしょうか? – VladacusB
私はそれを試みたことはありませんが、うまくいくかもしれません。 – Haukinger