我有一个定义区域的Prism(CAL)shell。每个地区负责其导航日志,一些地区将继承父母。
问题是您无法在Frame的内容模板中定义Prism区域。在Shell.xaml中实现NavigationServices并与Prism一起玩的最佳方法是什么。
以下代码导致区域经理因未找到区域而哭泣。我理解为什么,但希望对最佳实践有所了解。
<Frame JournalOwnership="OwnsJournal" NavigationUIVisibility="Hidden">
<Frame.Content>
<DockPanel>
<ItemsControl Name="NavigationFrame" DockPanel.Dock="Top"
cal:RegionManager.RegionName="{x:Static p:TopLevelShellRegionNames.NavigationRegion}"/>
<Grid>
<ContentControl Name="ContentFrame"
cal:RegionManager.RegionName="{x:Static p:TopLevelShellRegionNames.ContentRegion}"/>
</Grid>
</DockPanel>
</Frame.Content>
</Frame>
感谢。
答案 0 :(得分:2)
直接在Frame中定义区域并定义帧“Source”或“Content”属性中的任何内容是解决方案。
<Frame JournalOwnership="OwnsJournal" cal:RegionManager.RegionName="{x:Static p:TopLevelShellRegionNames.ContentRegion}">