对于PRISM 6和NavBarControl / NavBarGroup,我有一个非常奇怪的问题。
我的Shell.xaml中有以下内容
<dxn:NavBarControl MaxWidth="250" DockPanel.Dock="Left">
<dxn:NavBarControl.View>
<dxn:ExplorerBarView />
</dxn:NavBarControl.View>
<dxn:NavBarGroup prism:RegionManager.RegionName="Business" Header="Business" />
<dxn:NavBarGroup prism:RegionManager.RegionName="Reports" Header="Reports" />
<dxn:NavBarGroup prism:RegionManager.RegionName="Administration" Header="Administration" />
</dxn:NavBarControl>我为这个RegionAdapter创建了一个定制的NavBarGroup。需要实现CreateRegion的方法返回一个新的AllActiveRegion()。此方法只被击中两次,并返回一个用于报表和管理的新区域。
第一个名为Business的地区不见了。如果我在开头添加一个新组,则该区域将丢失,而下一个区域将被添加.
知道我能做什么吗?
谢谢你的帮助..。
发布于 2016-10-10 16:32:00
由于NavBarGroup不是一个可视元素(它是从FrameworkContentElement类继承的),所以这个问题可能与FrameworkContentElement中的在非框架元素区域中收集DelayedRegionCreationBehavior垃圾有关。您可以尝试修改PRISM类,如报告中所示,或者在代码中分配区域名称,就像我们在棱镜区域中添加DockLayoutManager后停止工作一样。
我采用了第二种方法,即在我的Shell.xaml后面设置代码中的区域。这样做的效果很好,各地区得到了正确的居住方式。
Shell.xaml.cs (ctor)
RegionManager.SetRegionName(business, "Business");
RegionManager.SetRegionName(reports, "Reports");
RegionManager.SetRegionName(administration, "Administration");https://stackoverflow.com/questions/39944088
复制相似问题