我正在学习Prism,我对主要Shell的最佳方法有疑问。
假设Shell有2个区域:Toolbar,Main。 工具栏有3个主按钮,每个按钮代表一个不同的按需加载模块。 这些模块中的每一个目前都在主区域中注册。
当我点击其中一个按钮时,我想执行以下操作:
通知任何活动视图其切换,如果仍需要挂起操作,则可选择取消。 这可能会级联到子视图。
如果未取消操作,则加载按需模块(如果尚未加载),否则在区域内激活它。
这三个模块是否都适合同一个区域,或者我的shell是否在内容演示者中定义了3个区域?
我遇到的一个方面是当你从Module Initialize注册一个视图时,它没有添加强类型名称,所以当我试图确定我的视图是否已添加到该区域时使用GetView(viewname)它总是返回null,所以我最终添加了另一个视图到该区域。
答案 0 :(得分:2)
让所有视图在同一区域注册(例如“MenuRegion”)是一种很好的方法。至于检查脏视图,您可能会发现Brian Noyes的这篇博文有用:
我希望这会有所帮助。
谢谢, 达米安