Windows 11 中面向开发人员的新增功能
Windows 11 现在已广泛发布,并加入了 Windows SDK 的版本 22000(也称为 SDK 版本 2110)。
对于 Windows 开发人员来说,这是一个激动人心的时刻,因为新的工具和框架正在积极开发中。 它们都旨在为尽可能多的受众提供对最新 Windows 功能的支持。 例如,Win32 开发人员喜欢新的 Windows 应用 SDK 模型,而新式用户界面设计的粉丝喜欢使用 WinUI。 喜欢 C++ 的开发人员可以使用 WinRT/C++ 以熟悉的方式创建应用。
首先,安装工具和 SDK,然后了解 Windows UI 库和 Windows 应用 SDK。
Windows 应用 SDK
功能 | 说明 |
---|---|
Windows 应用 SDK | Windows 应用 SDK 是一组新的开发人员组件和工具,它们代表着 Windows 应用开发平台的下一步发展。 Windows 应用 SDK 提供一组统一的 API 和工具,可供 Windows 11(向下到 Windows 10 版本 1809)上的任何桌面应用以一致的方式使用。 |
使用 Windows 应用 SDK 创建新应用 | Windows 应用 SDK 包括 WinUI 3 项目模板,你可以利用这些模板,使用完全基于 WinUI 的用户界面创建应用。 使用这些模板创建项目时(请参阅创建你的第一个 WinUI 3 项目),应用程序的整个用户界面都是使用 WinUI 3 提供的窗口、控件和其他 UI 类型实现的。 |
在现有项目中使用 Windows 应用 SDK | 如果现有项目要使用 Windows 应用 SDK,则可以在项目中安装最新版本的 Windows 应用 SDK NuGet 程序包。 未打包的应用必须遵循此过程来使用 Windows 应用 SDK,但打包的应用也可以这样做。 |
下载 Windows 应用 SDK | Windows 应用 SDK 有几个程序包和发布渠道。 下载 Windows 应用 SDK 页提供了有关需要哪些内容的指导、下载链接和安装说明。 |
Windows UI 库 (WinUI)
功能 | 说明 |
---|---|
WinUI | WinUI 2.8 和 WinUI 3 都是新的Windows UI 库的版本。 使用哪个版本取决于所使用的工具:例如,WinUI 2.8 支持 UWP 应用。 |
InfoBadge 控件 | InfoBadge 是一小块用户界面,可添加到应用中,并进行自定义,以显示数字、图标或简单的一个点。 InfoBadge 内置于 NavigationView 中,但也可以作为独立元素放置在 XAML 树中,从而可以将 InfoBadge 置于你选择的任何控件或 UI 块中。 如果已安装 WinUI 2 库应用,请单击此处打开此应用,了解 InfoBadge 的实际应用。 |
ColorPicker 控件 | ColorPicker 控件的新方向属性使你可以控制编辑控件相对于色谱的显示位置。 |
“Windows 功能”
Feature | 说明 |
---|---|
蓝牙 LE | 新 ConnectionParameters API 已添加到蓝牙 LE 命名空间。 有关详细信息,请参阅 BluetoothLEConnectionParameters 类、BluetoothLEPreferredConnectionParameters 和 BluetoothLEPreferredConnectionParametersRequest。 |
呼叫控制 | PhoneCall 类使你能够以编程方式控制活动或传入电话呼叫。 |
合成器时钟 | 合成器时钟 API 可提供统计信息和帧速率控制,以便在各种硬件配置上以尽可能快的节奏流畅地显示屏幕内容。 |
合成交换链 | 合成交换链 API 允许使用合成 API 的应用程序托管可以独立呈现和提供到的内容。 |
DirectDisplay | 新 API 已添加到 DirectDisplay 命名空间。 有关详细信息,请参阅 DisplayDevice.CreateSimpleScanoutWithDirtyRectsAndOptions 和 DisplayTaskPool.TryExecuteTask。 |
DNS 应用程序设置 | DnsGetApplicationSettings 函数为 DNS 服务器检索特定于应用程序的设置。 |
DNS 自定义服务器 | 新的 DNS_CUSTOM_SERVER 结构和 ADDRINFO_DNS_SERVER 结构使你可以配置自定义 DNS 服务器。 |
防火墙动态关键字 | 通过防火墙动态关键字可以在 Microsoft Defender 防火墙中管理动态关键字地址。 动态关键字地址用于创建一组 IP 地址,一个或多个防火墙规则可以引用这些 IP 地址。 动态关键字地址支持 IPv4 和 IPv6。 |
On-Air | ShareWindowCommandSource 类提供了一个框架,用于与 Windows shell 进行通信,以提供控制窗口共享的 UI。 |
笔触觉 | Windows 11 中引入的笔触觉反馈使用户能够以触觉方式感受其笔与应用用户界面交互。 通过 KnownSimpleHapticsControllerWaveforms 类可以为应用的用户配置此体验。 |
WinHttp 连接组 | 通过 WinHttpQueryConnectionGroup 函数可以拉取 WinHttp 连接的当前状态。 |
VPN 前台激活 | 新 API 已添加到 VPN 前台激活,这通常用于让用户输入 VPN 凭据。 有关详细信息,请参阅 VpnForegroundActivationOperation 类和 VpnForegroundActivatedEventArgs。 |
示例
系列说明已更新为使用 WinUI 创建的用户界面。
笔触觉示例演示如何使用 Windows 11 笔触觉 API 在支持触觉的笔上触发触觉反馈。 它演示如何:
- 从笔输入获取 SimpleHapticsController:此示例演示如何从指针 ID 转到 PenDevice,然后转到 SimpleHapticsController。 这需要笔和支持特定笔的兼容计算机都支持触觉。
- 检查笔触觉功能:SimpleHapticsController 具有用于笔硬件功能的属性,例如 IsIntensitySupported、IsPlayCountSupported、SupportedFeedback 等。
- 启动和停止触觉反馈:使用 SendHapticFeedback 和 StopFeedback API 的变体启动和停止反馈
- 触发墨迹书写和交互触觉反馈:代码演示如何为墨迹书写方案触发墨迹书写反馈,以及为用户交互触发交互反馈
WinUI 2 库已更新,以展示 WinUI 2.7 中 Windows UI 库的最新新增功能。