モジュールをdllからレイジースクリーンとしてTransitionContentControlにロードするWPFアプリに取り組んでいます。モジュール内のビューモデルのビューは、標準の命名規則に従うと正しく表示されます。ただし、次の 2 つの問題があります。
1)モジュール自体は、外部の「ウィジェット」、さらに別のdllからロードされたビューを持つ画面を使用します。
[ImportMany(typeof(IWidget), AllowRecomposition = true)]
public IEnumerable<ExportFactory<IWidget, IWidgetMetadata>> _widgets { get; set; }
<ContentControl x:Name="Navigator" cal:View.Model="{Binding Navigator}"/>
プロパティ "Navigator" が呼び出され、最初のインスタンスではビューが見つかりません。しかし、それが 2 回目に呼び出され、ビューが検出されます。ウィジェットのビューモデルにビューがアタッチされている (OnViewAttached が呼び出されている) (ViewAware クラス) ことがわかります。ただし、最後には表示されません。また、「OnViewLoaded」が呼び出されることはなく、ビューが「ビューが見つかりませんでした...」ということも認識しています。問題はどこだ?
同様のプロトタイプ アプリを使用して、問題を引き起こす Widgets プロジェクトを追加しましたが、Navigator プロパティはここで 1 回だけ呼び出されます。出力は同じですが、ビューが見つかりません。
2) もう 1 つの問題は、"cal:View.Context" がモジュールで機能していないように見えるため、View フォルダー内のサブフォルダーが解決されていないように見えることです。
/パトリック