没有PRISM的复合应用程序

时间:2013-11-01 05:39:23

标签: wpf mvvm user-controls prism

我有一个相对较大的应用程序。在我回顾了UI设计师提供的UI设计之后,我注意到每个视图分为3个部分:顶部,中部,底部。

顶部始终显示当前日期和时间。它还有两个文本块,其中一个始终显示,第二个取决于用户在视图中间部分的操作。

中间部分是主要内容部分,从一个视图到另一个视图,这部分发生了显着变化。

事实上,底部是导航面板。它改变但不是那么多。它由几个按钮组成。

好吧,当我开始认为我意识到我不想创建许多Windows(视图)时,特别是因为提供的设计中的一个中间部分有一个TabControl而后者又非常相似所有选项卡中的内容!

所以,如果我理解正确的话,我需要只创建一个View(我需要创建更多,但这并不重要)和许多UserControls。 View(它的ViewModel)应该将中间和底部部分的内容更改(注入)到不同的UserControls。据我所知,这是复合应用程序的概念。

我是对的吗?如何完成这样的任务?我可以避免使用PRISM吗?

1 个答案:

答案 0 :(得分:1)

Prism是一个很好的方法,因为区域控制器,它提供了你需要的一切开箱即用。然而,如果你想避免它 - 创建三个contentControls,它们将作为顶部,中间,底部区域。通过像

这样的“控制器”使它们可以访问
MyController.AddContentToTopRegion(UserControl uc)

因此,您将拥有一个负责区域的域,您可以在运行时注入视图。