我正在尝试构建一个包含shell应用程序和后续模块的模块化应用程序。我想为模块定义导航区域以显示超链接按钮。我在shell的视图中将此区域称为“NavigationRegion”:
<ItemsControl Name="NavigationRegion" prism:RegionManager.RegionName="NavigationRegion" />
在每个模块的initialize方法中,我调用导航区域的add方法:
public void Initialize() {
regionManager.Regions["NavigationRegion"].Add(new Views.Navigation());
}
使用AggregateCatalog.Catalogs.Add方法将模块全部加载到引导程序中:
this.AggregateCatalog.Catalogs.Add(new AssemblyCatalog(typeof(Orders.OrderModule).Assembly));
this.AggregateCatalog.Catalogs.Add(new AssemblyCatalog(typeof(People.PeopleModule).Assembly));
问题是,只显示其中一个视图,它是第一个添加到目录视图的程序集。那么如何将所有添加到导航区域的视图显示出来?或者我是否应该使用其他方法同时显示所有视图?
答案 0 :(得分:0)
ItemsControl需要告诉它显示多个项目:
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<toolkit:WrapPanel />
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>