外壳布局和切换视图的最佳实践 - Prism,SL4,按需负载模块

时间:2010-03-20 21:49:33

标签: silverlight-4.0 prism modularity

我正在学习Prism,我对主要Shell的最佳方法有疑问。

假设Shell有2个区域:Toolbar,Main。 工具栏有3个主按钮,每个按钮代表一个不同的按需加载模块。 这些模块中的每一个目前都在主区域中注册。

当我点击其中一个按钮时,我想执行以下操作:

通知任何活动视图其切换,如果仍需要挂起操作,则可选择取消。   这可能会级联到子视图。

如果未取消操作,则加载按需模块(如果尚未加载),否则在区域内激活它。

这三个模块是否都适合同一个区域,或者我的shell是否在内容演示者中定义了3个区域?

我遇到的一个方面是当你从Module Initialize注册一个视图时,它没有添加强类型名称,所以当我试图确定我的视图是否已添加到该区域时使用GetView(viewname)它总是返回null,所以我最终添加了另一个视图到该区域。

1 个答案:

答案 0 :(得分:2)

让所有视图在同一区域注册(例如“MenuRegion”)是一种很好的方法。至于检查脏视图,您可能会发现Brian Noyes的这篇博文有用:

我希望这会有所帮助。

谢谢, 达米安