Prism 来自自定义RegionAdapter的棱柱区域未显示在RegionManager列表中
我用的是棱镜6。我有一个用于(AvalonDock)Prism 来自自定义RegionAdapter的棱柱区域未显示在RegionManager列表中,prism,Prism,我用的是棱镜6。我有一个用于(AvalonDock)LayoutDocumentPane的自定义RegionaAdapter。我是这样使用它的: ... 很可能是您下面的代码导致了这个问题 受保护的覆盖IRegion CreateRegion() { 返回新区域(); } 尝试更改以返回可以承载多个活动视图的区域 protected override IRegion CreateRegion() { return new AllActiveRegion(); } 我在GitHub上
LayoutDocumentPane
的自定义RegionaAdapter
。我是这样使用它的:
...
很可能是您下面的代码导致了这个问题
受保护的覆盖IRegion CreateRegion()
{
返回新区域();
}
尝试更改以返回可以承载多个活动视图的区域
protected override IRegion CreateRegion()
{
return new AllActiveRegion();
}
我在GitHub上看到了这一点
根据控件的创建方式,您可能需要自己通过以下方式在控件上设置PrismRegionManager
:
专用只读IRegionManager\u regionManager;
公共AvalondocklayoutDocumentRegionaAdapter(
I区域行为工厂区域行为工厂,
IRegionManager区域管理器
):base(regionBehaviorFactory){
这个._regionManager=regionManager;
}
受保护的覆盖无效调整(IRegion区域、LayoutDocumentPane目标){
RegionManager.SetRegionManager(target,this.\u RegionManager);
//继续适应
}
我也遇到了类似的问题,但主要问题是Adapt方法从未被调用,因此没有任何区别。