MVVM(WPF)

时间:2018-01-16 19:48:09

标签: c# wpf xaml mvvm

我想以这种方式设计我的应用程序的架构,我将能够轻松地向其添加新元素,并最大程度地与核心应用程序分离(甚至可能来自外部程序集)。

让我们说,我有一个带有组合框的窗口,允许从这些元素中进行选择。每个元素都有自己的编辑器,主应用程序对它一无所知 - 只提供一个可以嵌入编辑器的地方。下图应该解释这个概念:

Concept of application

现在我已经检查了,我可以在XAML中执行以下操作:

<ContentControl Content="{Binding ExposedControl}" />

然而,这是对MVVM概念的一个相当大的违反,因为MainWindowViewModel包含(间接)一个View(Element的控件)。

如果元素是硬编码的,可以通过DataTemplate来解决元素的ViewModel。但这需要绑定应用程序和元素,这是我想要避免的。

如何设计架构以允许元素提供UI的一部分,同时保持MVVM模式的完整性?

0 个答案:

没有答案