-1

据说,MVVM 让 UI 开发人员和后端开发人员在开发时可以轻松协作。

WPF 允许将使用 XAML 标记的外观实现与使用托管编程语言的应用程序行为(代码隐藏)实现分开。

这听起来和我太相似了。谁能向我解释一下 MVVM、WPF 和 XAML 之间的关系是什么?

谢谢!

4

2 回答 2

3

WPF 是技术。它是为 .NET 中的用户界面开发提供的一组类,它是 Winforms 的替代品。

XAML 是 WPF 的 HTML。它是用于 WPF 的标记语言。它定义了用户看到的内容,例如文本框和标签,以及它们所在的位置。这包括样式。XAML 使用 WPF 定义的类。

然后你有一个模型。这就是您必须具备的所有后端知识和逻辑。例如,您的信用卡交易将存在于模型中。

然后你有一个视图模型(MVVM 是模型-视图-视图模型)。您的视图模型是模型和视图之间的层。它有助于使您的模型适应您的视图。ViewModel 的主要工作是为 UI (XAML) 提供公共属性。您定义的这些公共属性用于您希望列表框等使用的数据,以及您希望在单击按钮时运行的代码。

在 XAML 内部,您可以指定要绑定到的 ViewModel 的哪些属性。在 MVVM 和 WPF 中,ViewModel 与 UI/XAML 耦合,但模型保持抽象。

所以,长话短说:

  1. XAML 就像 HTML
  2. ViewModel 提供数据,因此 XAML 知道使用什么填充其 UI 控件。
  3. WPF 只是 XAML 使用的类的集合(以及代码隐藏,但通常不是 ViewModel)。
于 2013-11-11T03:26:56.063 回答
0

通俗地说,WPF 是技术(即 Winforms、WPF、Webforms),XAML 是 View 或 UI 的标记语言,而 MVVM 是模式。

于 2013-11-11T02:51:37.050 回答