我想用Silverlight和Prism创建一个应用程序,用户可以像这样导航:

红色矩形描绘了内部具有不同Prism模块的区域(在该示例中为6个不同的模块).
解决以下问题的最佳方法是什么:
AFAIK shell中的区域不会改变,但是我不能通过使用相同的区域来创建我想要的不同布局(例如,一旦模块水平堆叠,一次垂直堆叠).在这里有多个炮弹是个不错的选择吗?
我知道可以用于在区域中的视图之间切换的区域导航管道.这也可用于在不同的壳之间切换吗?
在shell之间导航感觉不对,但我怎么能解决这个问题呢?
这似乎是一种常见的情况,但我无法找到相关信息.大多数应用程序,即使是复杂的(即http://blogs.msdn.com/b/erwinvandervalk/archive/2009/03/02/how-to-build-an-outlook-style-application.aspx,HTTP:// www.codeproject.com/Articles/165370/Creating-View-Switching-Applications-with-Prism-4,StockTrader RI)只使用一个外壳,其布局永不改变,但如果布局必须改变怎么办?