モジュール内にリージョン アダプタを登録することはできますか?
Shell.xaml に ContentControl をリージョン "MainRegion" に設定しており、現在、AvalonDock コントロールを含むモジュールが取り込まれています。現在、シェル アプリに AvalonDock リージョン アダプターがありますが、それをモジュールに配置してそれ自体を登録したいと考えています。AvalonDock 以外のものを使用することにした場合に、シェル アセンブリを変更する (avalondock リージョン アダプターを削除する) ことなく、別のモジュールを簡単に使用できるように、このプログラムの柔軟性を維持したいと考えています。
このようなことが可能だと思います。誰もこれを以前にやったことがありますか?
現在、ブートストラップでは次のとおりです。
protected override RegionAdapterMappings ConfigureRegionAdapterMappings()
{
RegionAdapterMappings mappings = base.ConfigureRegionAdapterMappings();
var regionBehaviorFactory = Container.GetExportedValue<IRegionBehaviorFactory>();
var regionManager = Container.GetExportedValue<IRegionManager>();
mappings.RegisterMapping(typeof(Pane), new AvalonRegionAdapter(regionBehaviorFactory, regionManager));
return mappings;
}
これは、シェル ブートストラップの代わりにモジュールで実行したいことです。