What's New for developers in Windows 11
Windows 11 has now released to developers, and is joined by Build 22000 of the Windows SDK. (also known as SDK version 2110). Install the tools and SDK on Windows 11 and you’re ready to create a new Windows app. Learn about the Windows UI Library or the Windows App SDK to enhance your app with more specialized Windows features.
This is a collection of new and improved features and guidance of interest to Windows developers in this release. Keep checking back for more information on how to use the latest Windows 11 features, in conjuction with the Windows App SDK and the Windows UI Library, to create and upgrade apps with the latest Windows capabilities.
Windows App SDK
|Windows Apps SDK||The Windows App SDK is a set of new developer components and tools that represent the next evolution in the Windows app development platform. The Windows App SDK provides a unified set of APIs and tools that can be used in a consistent way by any desktop app on Windows 11 (and downlevel to Windows 10, version 1809).|
|Create a new app with the Windows App SDK||The Windows App SDK includes WinUI 3 project templates that enable you to create desktop and UWP apps with an entirely WinUI-based user interface. When you create apps using these project templates, the entire user interface of your application is implemented using windows, controls, and other UI types provided by WinUI 3.|
|Use the Windows App SDK in an existing project||If you have an existing project in which you want to use the Windows App SDK, you can install the latest version of the Windows App SDK NuGet package in your project. Unpackaged apps (that is, apps that do not use MSIX for their deployment technology) must follow this procedure to use the Windows App SDK, but packaged apps can do this too.|
|Download the Windows App SDK||There are several packages and release channels for the Windows App SDK. The Download the Windows App SDK page provides guidance on which ones you need, download links, and installation instructions.|
Windows UI Library (WinUI)
|WinUI 2.7||WinUI 2.7 is the latest stable release of the Windows UI Library for UWP applications, and desktop applications using XAML islands. Highlighted features in WinUI 2.7 include the new InfoBadge control and additions made to the ColorPicker control.|
|InfoBadge control||An InfoBadge is a small piece of UI that can be added into an app and customized to display a number, icon, or a simple dot. InfoBadge is built into NavigationView but can also be placed as a standalone element in the XAML tree, allowing you to place InfoBadge into any control or piece of UI of your choosing. If you have the XAML Controls Gallery app installed, click here to open the app and see the InfoBadge in action.|
|ColorPicker control||The new orientation property of the ColorPicker control allows you to control where the editing controls display relative to the color spectrum.|
|WinUI 3.0 Preview||Version 1.0 Preview of WinUI 3.0 is now available. This release contains bug fixes to WinUI 3.0 features, building towards the stable release.|
|Bluetooth LE||New ConnectionParameters APIs have been added to the Bluetooth LE namespace. See the BluetoothLEConnectionParameters class, BluetoothLEPreferredConnectionParameters, and BluetoothLEPreferredConnectionParametersRequest for detailed information.|
|Call-control||The PhoneCall class lets you programmatically control active or incoming phone calls.|
|Compositor clock||The compositor clock API offers statistics and frame rate control for presenting on-screen content smoothly, at the fastest possible cadence, and on a variety of hardware configurations.|
|Composition swapchain||The composition swapchain API allows applications using composition APIs to host content that can be independently rendered and presented to.|
|DirectDisplay||New APIs have been added to the DirectDisplay namespaces. See DisplayDevice.CreateSimpleScanoutWithDirtyRectsAndOptions and DisplayTaskPool.TryExecuteTask for detailed information.|
|DNS application settings||The DnsGetApplicationSettings function retrueves application-specific settings for a DNS server.|
|DNS custom server||New DNS_CUSTOM_SERVER structure and ADDRINFO_DNS_SERVER structure allow you to configure a custom DNS server.|
|Firewall dynamic keywords||Firewall dynamic keywords allow you to manage dynamic keyword addresses in Microsoft Defender Firewall. A dynamic keyword address is used to create a set of IP addresses to which one or more firewall rules can refer. Dynamic keyword addresses support both IPv4 and IPv6.|
|On-Air||The ShareWindowCommandSource class provides a framework to communicate with the Windows shell to present a UI that controls window sharing.|
|Pen haptics||Pen haptic feedback, introduced in Windows 11, allows users to feel their pen interacting in a tactile manner with the user interface of an app. The KnownSimpleHapticsControllerWaveforms class allows you to configure this experience for your app's users.|
|WinHttp connection groups||The WinHttpQueryConnectionGroup function allows you to pull the current state of WinHttp's connections.|
|VPN foreground activation||New APIs have been added to VPN foreground activation, which is often used to let a user input VPN credentials. See the VpnForegroundActivationOperation class and VpnForegroundActivatedEventArgs for more information.|
The Pen Haptics sample shows how to use Windows 11 pen haptics API to trigger haptic feedback on a pen that supports haptics. It shows how to:
- Get SimpleHapticsController from pen input: this sample shows how to go from pointer ID to PenDevice and then to SimpleHapticsController. This requires haptics support from both the pen and a compliant machine that supports the particular pen.
- Check pen haptics capabilities: SimpleHapticsController has properties for pen hardware capabilities, such as IsIntensitySupported, IsPlayCountSupported, SupportedFeedback, etc.
- Start and stop haptic feedback: start and stop feedback using variations of SendHapticFeedback and StopFeedback API
- Trigger both inking and interaction haptic feedback: the code shows how to trigger inking feedback for inking scenarios and interaction feedback for user interactions
The XAML Controls Gallery has been updated to showcase the latest additions to the Windows UI Library in WinUI 2.7.