MVVM 工具包简介
CommunityToolkit.Mvvm
包(又名 MVVM 工具包,以前称为 Microsoft.Toolkit.Mvvm
)是一个现代、快速和模块化的 MVVM 库。 它是 .NET 社区工具包的一部分,围绕以下原则生成:
- 独立于平台和运行时 - .NET Standard 2.0、.NET Standard 2.1 和 .NET 6🚀(与 UI 框架无关)
- 易于选取和使用 - 对应用程序结构或编码范例(“MVVM”之外)没有严格的要求,也就是可以灵活使用。
- 按需取用 - 自由选择要使用的组件。
- 引用实现 - 精简且高效,为基类库中包含的接口提供实现,但缺少直接使用它们所需的具体类型。
MVVM 工具包由 Microsoft 维护和发布,是 .NET Foundation 的一部分。 它还由几个内置于 Windows 的第一方应用程序(如 Microsoft Store)使用。
此包面向 .NET Standard ,以便可在任何应用平台上使用:WinUI 3、UWP、WinForms、WPF、Xamarin、Uno 等;以及任何运行时:.NET Native、.NET Core、.NET Framework 或 Mono。 它在所有这些平台和运行时上都可运行。 API 图面在任何情况下都相同,因此非常适合生成共享库。
此外,MVVM 工具包还有一个 .NET 6 目标,用于在 .NET 6 上运行时实现更多内部优化。 在这两种情况下,公共 API 图面都是相同的,因此 NuGet 将始终解析包的最佳版本,使用者无需担心有哪些 API 可以在其平台上使用的问题。
若要在 Visual Studio 中安装包:
在“解决方案资源管理器”中,右键单击项目并选择“管理 NuGet 包”。 搜索“CommunityToolkit.Mvvm”并安装它。
添加 using 或 Import 指令以使用新 API:
using CommunityToolkit.Mvvm;
Imports CommunityToolkit.Mvvm
代码示例可从 MVVM 工具包的其他文档页和项目的单元测试中获取。
使用此包可以访问标准、独立、轻量类型的集合,从而为使用 MVVM 模式生成现代应用提供初始实现。 仅这些类型就足以供许多用户生成应用,而无需额外的外部引用。
包含的类型有:
- CommunityToolkit.Mvvm.ComponentModel
- CommunityToolkit.Mvvm.DependencyInjection
- CommunityToolkit.Mvvm.Input
- CommunityToolkit.Mvvm.Messaging
- CommunityToolkit.Mvvm.Messaging.Messages
此包旨在提供尽可能大的灵活性,让开发人员可以自由选择要使用的组件。 所有类型都是松散耦合的,因此只需包含使用的内容。 不需要千篇一律地使用一系列特定的全能 API,在使用这些帮助程序生成应用时也不需要遵循某一套强制性模式。 以最符合你需求的方式组合这些生成块。