0

Module にビューを表示する必要があります。モジュールは inInitializeメソッドを使用してそのビューを登録します。ユーザーはドロップダウン リストからモジュール名を選択します。初めて I ModuleManager.LoadModule(文字列 ModuleName) を使用して動作します。同じモジュールを再度表示したい場合 (以前に表示されたモジュールをクリアした後、同じ領域で)IModuleManager.LoadModuleは機能しません。そのモジュールに含まれるビューとリージョンがわかりません。私は ModuleName だけを知っており、そのビューを表示する必要があります。どうやってやるの?

4

1 に答える 1

0

あなたの質問は非常に紛らわしいです。より多くの情報を提供できますか?IRegionManagerは、ビューを事前定義されたリージョンに登録するためのコンポーネントです。ModuleManagerは、私がそれを正しく理解した場合にのみ、アセンブリをロードする責任があります。

モジュールを複数回ロードすることはできないと思います。2回目はすでにロードされているからです。ビューを表示するためのロジックは、Modul内のサービスを介して規制する必要があるため、モジュール内には、IRegionManagerを使用して特定のビューをリージョンに登録するメソッドが必要です。

UnityとMEF(または別のIOC)のどちらを使用しているかはわかりませんが、コンテナーを介してモジュール内でIRegionManagerを取得できます。

たぶん、このチュートリアルシリーズPrismチュートリアルシリーズを見る必要があります。あなたはいくつかの基本原則を欠いているように私には思えます

于 2012-11-08T07:47:05.140 に答える