MVVM 工具包简介

CommunityToolkit.Mvvm (又名 MVVM 工具包,以前名为 Microsoft.Toolkit.Mvvm) 是一个现代、快速且模块化的 MVVM 库。 它是 .NET 社区工具包的一部分,围绕以下原则构建:

  • 平台和运行时独立 - .NET Standard 2.0.NET Standard 2.1.NET 6🚀 (UI Framework 不可知)
  • 易于选取和使用 - 在“MVVM”) 之外,对应用程序结构或编码范例 (没有严格的要求,即灵活使用。
  • 点菜 - 自由选择要使用的组件。
  • 参考实现 - 精益和性能,为基类库中包含的接口提供实现,但缺少直接使用它们的具体类型。

MVVM 工具包由 Microsoft 维护和发布,是 .NET Foundation 的一部分。 它还由内置于 Windows 中的多个第一方应用程序(例如 Microsoft Store)使用。

此包面向 .NET Standard,因此可在任何应用平台上使用:UWP、WinForms、WPF、Xamarin、Uno 等;和在任何运行时上:.NET Native、.NET Core、.NET Framework或 Mono。 它在所有它们上运行。 API 图面在所有情况下都是相同的,因此非常适合生成共享库。

此外,MVVM 工具包还有 一个 .NET 6 目标,用于在 .NET 6 上运行时启用更多内部优化。 在这两种情况下,公共 API 图面完全相同,因此 NuGet 将始终解析包的最佳版本,而使用者无需担心哪些 API 将在其平台上可用。

入门

若要从 Visual Studio 中安装包,请执行以下操作:

  1. 在“解决方案资源管理器”中,右键单击项目并选择“管理 NuGet 包”。 搜索 CommunityToolkit.Mvvm 并安装它。

    NuGet 包

  2. 添加 using 或 Imports 指令以使用新 API:

    using CommunityToolkit.Mvvm;
    
    Imports CommunityToolkit.Mvvm
    
  3. 代码示例在 MVVM 工具包的其他文档页和项目的 单元测试 中提供。

何时应使用此包?

使用此包访问标准、独立、轻型类型的集合,这些类型为使用 MVVM 模式生成新式应用提供入门实现。 仅这些类型通常足以让许多用户生成应用,而无需额外的外部引用。

包含的类型包括:

此包旨在提供尽可能多的灵活性,因此开发人员可以自由选择要使用的组件。 所有类型都是松散耦合的,因此只需包含你使用的内容。 无需使用一系列特定的包罗万象 API 进行“全能”操作,在使用这些帮助程序生成应用时,也不需要遵循一组必需的模式。 以最符合需求的方式组合这些构建基块。

其他资源

  • 查看多个 UI 框架 的示例应用 () 以查看 MVVM 工具包的运行情况。
  • 还可以在 单元测试中找到更多示例。