微软发布 Windows Presentation Foundation (WPF) 的 2023 路线图,确定了三大现代化问题。但该团队表示,预计无法交付所有 3 项内容;因此呼吁 WPF 社区成员进行投票,以帮助确认相关项目的优先级。
文档中列出的三项关键性功能分别为:
- Windows 11 Theming:为大多数 WPF 控件带来 Windows 11 外观。支持 Win11 功能,例如对齐布局、控件的圆角和更新的配色方案,将为 WPF 应用程序带来增强的体验。对于在 Win11 上运行的 WPF 上构建的所有 consumer applications,此功能将确保应用程序可以利用现代设计元素和行为。
- 较新的控件:WPF FolderBrowserDialog - 引入对 WPF 的 FolderBrowserDialog 的 native 支持。这自 .NET Core 3 以来就一直是社区的首要问题,此功能将减少对 WinForms 和其他第三方替代方案的依赖。
- 可空性注释:在 WPF 中启用可空性注释。此举将提高代码库的质量,以及所有 WPF 应用程序的质量,并减少调试 ArgumentNullExceptions 和 NullReferenceExceptions 的时间。“其余的 dotnet(例如 winforms)repo 已经朝着这个方向发展,这个目标也将使 WPF 达到最新标准。”
在撰写本文时,Windows 11 Theming 所获支持度最高。
WPF 团队称,他们 “想要为 WPF 创建一个更大的愿景”。但鉴于团队尚未成熟,其目标是在大约 6 个月内通过社区协作启动愿景文档。WPF 现代化的长期愿景包含支持可空性注释、trimming 和 NativeAOT 支持、DirectX 升级和较新的 .NET features 和 abstractions 集成等投资。“WPF 控件的外观多年来一直没有改变。我们相信,更新我们的样式以匹配 Windows 11 中使用的样式将有助于 WPF 开发人员创建更一致的 Windows 体验。”
WPF 是用于构建 Windows 桌面应用程序的 .NET Core UI 框架。WPF 支持广泛的应用程序开发功能,包括应用程序模型、资源、控件、图形、布局、数据绑定和文档。WPF 使用可扩展应用程序标记语言 (XAML) 为应用程序编程提供声明性模型。从 .NET 6.0 开始,WPF 支持 ARM64。
WinForms 是另一个 UI 框架,用于构建受 .NET (6.0.x/5.0.x/3.1.x) 支持的 Windows 桌面应用程序。WPF 和 WinForms 应用程序只能在 Windows 上运行,它们是
Microsoft.NET.Sdk.WindowsDesktop
SDK 的一部分