Repository navigation
Releases
2.6 Experimental (2.6.6-experimental) 🧪
Windows App SDK 2.6 Experimental extends the experimental controls and resource APIs, with more accessible WinUI interactions and new video-scaling options. It follows Windows App SDK 2.6.5 stable and brings forward the changes from that release alongside the experimental-only additions below.
What's new in WinAppSDK 2.6 Experimental:
TableViewhierarchy and live data.TableViewSource.ParentBybuilds hierarchical rows, andIsLiveShapingkeeps sorting, filtering, grouping, and hierarchy up to date as item properties change. The control also adds cell and column-header context menus, row expansion APIs and automation support, and improvements to high-contrast rendering and column resizing.Chartaccessibility.ChartAutomationPeerand chart parts add UI Automation support to the experimentalChartcontrol.- Zero-copy resource access.
ResourceCandidate.ValueAsMemoryBufferprovides access to embedded resource bytes without copying them. New native resource-view APIs bring the same capability to C and C++ callers. - Scrolling content outside bounds.
ScrollView.CanContentRenderOutsideBoundsandScrollPresenter.CanContentRenderOutsideBoundslet apps opt out of viewport clipping so content can render outside the bounds. Both properties default tofalse. - Video-scaling options. A new
VideoScaler.CreateAsyncoverload accepts execution-device, scenario, and performance or quality preferences throughVideoScalerCreationOptions. Input color-matrix and color-range settings let apps describe BT.601 or BT.709 frames with full or limited color ranges.
Bugs fixed:
| Bug fix | Runtime Compatibility Change |
|---|---|
Improved Window.Width and Window.Height behavior after a window closes, retaining the last restored client size. Explicitly set height is preserved when title-bar settings change on a restored window, and native size requests are limited to 65,535 physical pixels per dimension. |
WinUI_WindowWidthHeight |
Added UI Automation selection support for InkToolbar flyout items and a stroke-width slider automation peer so Narrator announces stroke widths instead of percentages. Fixed InkCanvas input clipping at display scaling above 100%. |
InkCanvas_InkingSupport |
| Fixed custom dependency properties and metadata being lost when shutting down and restarting XAML. | WinUI_EnableShutdownRestart |
Added clearer debugger guidance when XamlChartsResources is missing. |
Charts_ExperimentalControlApi |
Fixed ContentDialog entrance animations and unwanted keyboard-accelerator tooltips on MenuFlyout items when XamlChangeId.OptimizeApplyStyles is enabled. See microsoft/microsoft-ui-xaml#11257. |
Xaml_OptimizeApplyStylesApplyTemplate |
Fixed a reference cycle during input teardown by closing the system InputSite. |
LiftedInput_CloseSystemInputSite |
Fixed a crash when a Flyout theme changes before its presenter is available. See microsoft/microsoft-ui-xaml#12089. |
WinUI_FlyoutCheckForNullPresenter |
Fixed missing InkToolbar translations for accessible names, color descriptions, and pen configuration text. See microsoft/microsoft-ui-xaml#12162. |
N/A, shared localization-resource update |
To see everything that's new and changed, see the full Windows App SDK 2.6 Experimental release notes.
Try it out
- Download the 2.6.6-experimental NuGet package to use WinAppSDK 2.6 Experimental in your app.
- Download and update the WinUI Gallery to see the WinUI 3 updates firsthand.
Getting started
To get started using Windows App SDK to develop Windows apps, check out the following documentation:
Windows App SDK 2.6.5
Windows App SDK 2.6.5 delivers targeted fixes for rendering, window composition, system backdrops, and packaged app installation.
Bug fixes
| Bug fix | Runtime Compatibility Change |
|---|---|
| Fixed rendering corruption that could occur on systems with multiple graphics adapters or monitors. | N/A, rendering-region fix |
Fixed an E_NOINTERFACE crash when enabling the System Composition Engine on Windows builds that lack the required interfaces. The runtime now uses the lifted compositor on those builds. |
N/A, operating system capability detection fix |
| Fixed an issue where window backgrounds and GDI controls could become unexpectedly transparent on Windows 10, including apps hosting XAML islands. | N/A, window composition ABI fix |
| Reverted the system backdrop change introduced in 2.6.4 to address wrong-thread exceptions. System backdrops for content islands and XAML windows are not supported when using the System Composition Engine in this release. | N/A, revert of a previously contained change |
Fixed an issue where app-extension registration metadata generation returned E_NOTIMPL, which could prevent packaged apps from installing. |
N/A, missing implementation fix |
For details, see the full Windows App SDK 2.6.5 release notes.
Try it out
- Install the Microsoft.WindowsAppSDK 2.6.5 NuGet package.
Getting started
To get started using Windows App SDK to develop Windows apps, check out the following documentation:
Windows App SDK 2.6.4
Windows App SDK 2.6.4 removes the Limited Access Feature requirement for the Language Model APIs, updates ONNX Runtime to 1.27.1, and includes reliability fixes across WinUI 3, app lifecycle, notifications, DispatcherQueue, Content, composition, and Windows AI.
What's new in WinAppSDK 2.6.4:
- Language Model APIs no longer require a Limited Access Feature unlock. Apps can call the Language Model APIs without first unlocking the Language Model Limited Access Feature. Apps using earlier Windows App SDK versions must continue to follow the LAF requirements for their target Windows versions.
- Updated ONNX Runtime. The version of ONNX Runtime has been updated to 1.27.1. See ONNX Runtime versions for more info.
Bug fixes:
| Bug Fix | Runtime Compatibility Change |
|---|---|
Fixed an access violation crash that could occur during app shutdown when a text control, such as a TextBox or RichEditBox, was still alive while the XAML core was being torn down. |
CCoreServices_InputServicesTeardownOrder |
Fixed an issue where AppInstance.GetInstances could fail with E_INVALIDARG while enumerating application instances. |
AppLifecycle_GetInstancesProcessHandleFix |
Fixed a crash when calling some AppNotificationManager and AppInstance APIs. |
AppNotification_AppInstance_FixStackOverflowCrash |
Fixed an issue where self-contained apps could fail to load Microsoft.WindowsAppRuntime.Insights.Resource.dll when using the VersionInfo APIs or registering an AppNotification callback (microsoft/WindowsAppSDK#6071, microsoft/WindowsAppSDK#6387). |
VersionInfo_MissingInsightsResourceDll |
Fixed an issue where an unhandled exception in a DispatcherQueue callback could produce a crash dump with only the HRESULT, omitting the app's original exception type, message, and stack trace. |
DispatcherQueue_CaptureCallbackErrorContext |
Fixed the same crash dump issue for unhandled exceptions in DispatcherQueueTimer.Tick event handlers. |
DispatcherQueueTimer_CaptureTickErrorContext |
Fixed an issue where a failure while creating a ContentIsland or other Content object immediately terminated the app. The original error is now returned to the calling code instead. |
ContentIsland_InitializationFailureCleanup |
| Fixed system backdrop support for lifted content islands and XAML windows when using the System Composition Engine. | SwitcherSystemBackdropBrushSupport |
Fixed projection of compatible Windows.UI.Composition objects into Microsoft.UI.Composition, preserving object identity, when using the System Composition Engine. |
SwitcherColdWrappingWUCToMUC |
Fixed a crash in ItemsView when the target of StartBringItemIntoView was collapsed or recycled before the scroll completed (microsoft/microsoft-ui-xaml#11865). |
ItemsView_InvalidBringIntoViewAnchor |
Fixed a crash that could occur when a WebView2 control received focus while still initializing and its parent window was temporarily disabled when initialization finished. |
WebView2_HandleMoveFocusInvalidArgument |
| Improved diagnosability for Windows AI model initialization APIs. | AIFabric_Tip_APIClassName_ReasonName |
Fixed false IntelliSense errors on XAML-generated members, such as InitializeComponent and x:Name fields, in WinUI 3 C# projects edited in VS Code with C# Dev Kit. To opt out, set the EnableWinUIDesignTimeGeneratedXamlCompileItems property to false. |
N/A, build .targets change |
To see everything that's new and changed, see the full Windows App SDK 2.6.4 release notes.
Try it out
- Download the 2.6.4 NuGet package to use WinAppSDK 2.6 in your app.
- Download and update the WinUI Gallery to see the WinUI 3 updates firsthand.
Getting started
To get started using Windows App SDK to develop Windows apps, check out the following documentation:
Windows App SDK 1.8.12 (1.8.260921001)
Windows App SDK 1.8.12 is the final servicing release for version 1.8. It fixes a Windows ML issue that could expose an unavailable execution provider on certain Arm64 devices.
Bug fixes
| Bug fix | Runtime Compatibility Change |
|---|---|
Fixed an issue where ExecutionProviderCatalog.FindAllProviders could return an execution provider in the NotPresent state on certain Arm64 devices even though ExecutionProvider.EnsureReadyAsync could not acquire it. The unavailable provider is no longer returned on affected devices. |
N/A, Windows ML provider availability fix |
To see everything that's new and changed, see the full Windows App SDK 1.8.12 release notes.
Try it out
- Download the 1.8.260921001 NuGet package to use WinAppSDK 1.8 in your app.
Getting started
To get started using Windows App SDK to develop Windows apps, check out the following documentation:
2.5 Experimental (2.5.4-experimental) 🧪
Windows App SDK 2.5 Experimental is the latest experimental release, adding new Windows AI capabilities, code-based theme resource bindings and DataTemplate construction, the new TableView and Chart controls, and expanded WinUI 3 inking support. It follows Windows App SDK 2.5.1 stable and brings forward the changes from that release alongside the experimental-only additions below.
What's new in WinAppSDK 2.5 Experimental:
- Windows AI device selection. New
AIComputeDeviceAPIs let apps choose the default, CPU, or NPU execution device for text recognition. App Content Index image indexing can use the same preference for OCR throughContentRegionImageOptions.PreferredTextRecognizerDevice. - AI Speech and language model updates. New speech recognition factories improve model configuration and creation, while updated audio, streaming, and continuous recognition APIs expand speech scenarios. Language model APIs now expose model identity, low-rank adapter compatibility, and response statuses for game mode and low video memory.
- Theme resource binding from code. The experimental
FrameworkElement.SetThemeResourceBindingAPI lets apps create the equivalent of a{ThemeResource}binding programmatically. - Delegate-based
DataTemplateconstruction. A new experimentalDataTemplateconstructor accepts an app-provided delegate that creates the template's element subtree. TableViewcontrol. The experimentalTableViewcontrol is now available in the public WinMDs, with grouping, templated group headers, sorting and filtering, resizable columns, and optional cell and header tooltips.Chartcontrol. A new experimental WinUI 3Chartcontrol presents Cartesian data as line, area, and bar series, with configurable axes, legends, labels, and markers.- WinUI 3 inking updates. New
InkPresenter.ActivateCustomDryingandInkSynchronizerAPIs let apps render committed ink themselves, andInkToolbarnow targets anInkPresenterdirectly.
Bugs fixed:
- Fixed an access violation that could occur when reading
InkPresenter.StrokeContainerwhile custom drying was active. - Fixed
InkCanvaspresenter sizing under aRenderTransform. - Fixed a WinUI resource-tracking issue that could cause memory usage to grow when apps repeatedly created visual-state storyboards or resolved static or theme resources.
- Improved cleanup of unreachable native WinUI objects in .NET apps after tab or page teardown.
To see everything that's new and changed, see the full Windows App SDK 2.5 Experimental release notes.
Try it out
- Download the 2.5.4-experimental NuGet package to use WinAppSDK 2.5 Experimental in your app.
- Download and update the WinUI Gallery to see the WinUI 3 updates firsthand.
Getting started
To get started using Windows App SDK to develop Windows apps, check out the following documentation:
Windows App SDK 2.5.1
Windows App SDK 2.5.1 adds Windows Error Reporting support for self-contained .NET MSIX apps, introduces limited-access app content search APIs, and includes reliability fixes across WinUI 3, input, composition, deployment, and Windows AI.
What's new in WinAppSDK 2.5.1:
- Windows Error Reporting support. Self-contained .NET MSIX apps can now use the
windows.diagnosticServiceModulepackage-manifest extension to declare diagnostic modules, allowing Windows Error Reporting to load them and collect actionable crash dumps. - Limited-access AppContentSearch APIs. Apps with a limited-access feature token can use the new
AppContentIndexAPIs to index text and images, perform lexical queries, and use semantic matching on supported NPU-enabled devices. The APIs support semantic search and retrieval-augmented generation scenarios.
Bug fixes:
| Bug Fix | Runtime Compatibility Change |
|---|---|
| Fixed a crash in windowed-popup input handling when a focus or pointer event was processed after the popup's island had been disposed. | PointerInputProcessor_ReleaseCaptureOnDisposedIsland |
Fixed a crash in NavigationView when resizing the control could produce a negative pane MaxHeight. |
NavigationView_UpdatePaneLayoutNegativeMaxHeight |
Fixed an issue where the property set returned by ElementCompositionPreview.GetPointerPositionPropertySet stopped updating while a pointer was pressed. |
PointerPositionPropertySet_UpdateWhilePressed |
Fixed a crash in NavigationView when an expanded item's flyout was shown after the item had been collapsed or recycled. |
NavigationViewItem_DeferredFlyoutShowStaleState |
Fixed a fail-fast when a KeyboardAccelerator used an OEM or punctuation key and displayed the accelerator shortcut label. |
KeyboardAccelerator_OemKeyNoFailFast |
| Fixed a fatal process exit during XAML shutdown in apps hosting WinUI 3 on more than one UI thread. | WindowsXamlManager_ActivationFactoryCacheResetRace |
Fixed an issue where a CommandBar with no secondary commands could show an empty overflow button at fractional display scales such as 175%. |
CommandBar_SpuriousOverflowButtonAtFractionalScale |
Fixed an issue that prevented apps using the System Composition Engine from calling VisualInteractionSource.CreateFromIVisualElement. |
CompositionEngine_SwitcherSeptemberFixes |
Fixed effect graphs and SceneLighting rendering for apps using the System Composition Engine. |
CompositionEngine_SwitcherSeptemberFixes |
Fixed InputPointerSource.ActivationBehavior not honoring NoActivate when using the System Composition Engine. |
CompositionEngine_SwitcherSeptemberFixes |
Fixed CompositionEngine selection behavior for null inputs and no-op selections. |
CompositionEngine_SwitcherSeptemberFixes |
| Fixed cursor customization for lifted input when using the System Composition Engine. | CompositionEngine_SwitcherSeptemberFixes |
Fixed ICompositionObject queries on gradient stop collections when using the System Composition Engine. |
N/A, operating system composition fix |
Fixed ContentExternalOutputLink border and background behavior when using the System Composition Engine. |
N/A, operating system composition fix |
Fixed access to VisualReferenceController when using the System Composition Engine. |
N/A, operating system composition fix |
| Fixed a registration issue that could occur when installing the Windows App SDK. | N/A, deployment registration fix |
| Fixed an issue where Video Super Resolution could fail during initialization or inference with the updated ONNX Runtime dependency. | N/A, dependency compatibility update |
To see everything that's new and changed, see the full Windows App SDK 2.5.1 release notes.
Try it out
- Download the 2.5.1 NuGet package to use WinAppSDK 2.5 in your app.
- Download and update the WinUI Gallery to see the WinUI 3 updates firsthand.
Getting started
To get started using Windows App SDK to develop Windows apps, check out the following documentation:
2.4 Experimental (2.4.1-experimental) 🧪
Windows App SDK 2.4 Experimental (2.4.1-experimental) 🧪
Windows App SDK 2.4 Experimental is the latest experimental release, headlined by inking support for WinUI 3. It follows Windows App SDK 2.4.0 stable and generally brings forward the changes from that release alongside the experimental-only addition below.
What's new in WinAppSDK 2.4 Experimental:
- Inking support for WinUI 3. The new
InkCanvas,InkToolbar, andInkPresenterAPIs add pen and touch input, clipboard and high-contrast support, stroke input, and unprocessed input to WinUI 3 apps.
To see everything that's new and changed, see the full Windows App SDK 2.4 Experimental release notes.
Try it out
- Download the 2.4.1-experimental NuGet package to use WinAppSDK 2.4 in your app.
- Download and update the WinUI Gallery to see the WinUI 3 updates firsthand.
Getting started
To get started using Windows App SDK to develop Windows apps, check out the following documentation:
Windows App SDK 2.4.0
Windows App SDK 2.4.0
Windows App SDK 2.4.0 is the latest stable release on the 2.x line, adding expanded input support, more precise LanguageModel response statuses, and targeted reliability fixes across input, Storage Pickers, MRT Core, app runtime isolation, composition, and XAML tooling.
What's new in WinAppSDK 2.4.0:
- Expanded input support. WinUI 3 apps can now use operating system touchpad and mouse haptics through
Windows.Devices.Haptics, along with touchpad single-finger panning, when supported by the operating system and hardware. - More precise
LanguageModelresponse statuses. The newLanguageModelResponseStatus.UnsupportedLanguageandLanguageModelResponseStatus.LanguageMismatchvalues let apps distinguish unsupported-language and input/output-language mismatch conditions from generic errors.
Bug fixes:
| Bug Fix | Runtime Compatibility Change |
|---|---|
| Fixed a crash that could occur when a touch or pen contact left a scrollable area with precise timing. | InputPointerSource_DepartingScrollInputCrashFix |
| Fixed an issue where the Storage Pickers left the calling WinUI app window without keyboard focus after the file dialog closed. The app now restores its previous focus. See GitHub issue microsoft/WindowsAppSDK#6505. | StoragePickers_RestoreFocusAfterDialogCloses |
Fixed a regression where MrmGetFilePathFromName returned ERROR_FILE_NOT_FOUND when the PRI file didn't exist instead of returning the documented fallback path. See GitHub issue microsoft/WindowsAppSDK#5940. |
ResourceManager_RestoreDefaultFallbackPath |
Fixed an issue where MICROSOFT_WINDOWSAPPRUNTIME_BASE_DIRECTORY could be inherited by child processes, disrupting MRT Core and catalog lookups. See GitHub issue microsoft/WindowsAppSDK#5987. |
WindowsAppRuntime_BaseDirectoryIsolation |
Fixed a crash when apps using the System Composition Engine called VisualInteractionSource.TryRedirectForManipulation. |
N/A, operating system composition bridge fix |
Fixed the access modifier on the generated C# entry point helper when DISABLE_XAML_GENERATED_MAIN is defined. See GitHub issue microsoft/microsoft-ui-xaml#11245. |
N/A, build-time tooling change |
To see everything that's new and changed, see the full Windows App SDK 2.4.0 release notes.
Try it out
- Download the 2.4.0 NuGet package to use WinAppSDK 2.4 in your app.
- Download and update the WinUI Gallery to see the WinUI 3 updates firsthand.
Getting started
To get started using Windows App SDK to develop Windows apps, check out the following documentation:
2.3.2-experimentalA 🧪
Windows App SDK 2.3 Experimental A (2.3.2-experimentalA) 🧪
Windows App SDK 2.3 Experimental A is the latest experimental release, headlined by new DPI-aware window sizing from XAML, a substantial round of App Content Index indexing and reliability improvements, and additional Windows AI and speech APIs. It builds on the Windows App SDK 2.3.1 stable release and adds the experimental-only work described below.
What's new in WinAppSDK 2.3 Experimental A:
Window.WidthandWindow.Height. New properties give apps a DPI-aware way to get and set a window's size in logical (client) pixels directly from code or markup, without reaching throughWindow.AppWindowand doing manual logical-to-physical DPI conversion. CompanionWindow.MinWidth,Window.MinHeight,Window.MaxWidth, andWindow.MaxHeightproperties constrain the window's size.- App Content Index improvements. The experimental App Content Index APIs add faster batch indexing via
AppContentIndexer.BatchAddOrUpdate, direct indexing of bitmap and image-stream content (with OCR and semantic options), static ranking boosts for individual content items or regions, ICU-based multilingual tokenization, and automatic recovery from index corruption. Indexing and query paths are also substantially faster, with more stable lexical ranking. - Structured JSON generation. A new
LanguageModel.GenerateStructuredJsonResponseAsyncAPI lets apps generate structured JSON output from the on-device language model, making it easier to get typed, machine-readable results back from a prompt. - Speech recognition cleanup. The experimental
SpeechAudioProvidernow implementsIClosable, so apps can deterministically release the provider withClose/Disposewhen they finish streaming audio.
To see everything that's new and changed, see the full Windows App SDK 2.3 Experimental A release notes.
Try it out
- Download the 2.3.2-experimentalA NuGet package to use WinAppSDK 2.3 in your app.
- Download and update the WinUI Gallery to see the WinUI 3 updates firsthand.
Getting started
To get started using Windows App SDK to develop Windows apps, check out the following documentation:
Windows App SDK 1.8.11 (1.8.260804001)
Windows App SDK 1.8.11 (1.8.260804001)
WinAppSDK 1.8.11 is the latest stable servicing release for 1.8, with fixes for Storage Picker focus restoration, MRT Core fallback paths, and Windows App Runtime base-directory isolation.
Bug fixes:
| Bug Fix | Runtime Compatibility Change |
|---|---|
Fixed an issue where the Storage Pickers (FileOpenPicker, FileSavePicker, and FolderPicker) left the calling WinUI app window without keyboard focus after the file dialog closed. The app now restores its previous focus. See GitHub issue microsoft/WindowsAppSDK#6505. |
StoragePickers_RestoreFocusAfterDialogCloses |
Fixed a regression where MrmGetFilePathFromName returned ERROR_FILE_NOT_FOUND when the PRI file didn't exist instead of returning the documented fallback path. See GitHub issue microsoft/WindowsAppSDK#5940. |
ResourceManager_RestoreDefaultFallbackPath |
Fixed an issue where MICROSOFT_WINDOWSAPPRUNTIME_BASE_DIRECTORY could be inherited by child processes, disrupting MRT Core and catalog lookups. See GitHub issue microsoft/WindowsAppSDK#5987. |
WindowsAppRuntime_BaseDirectoryIsolation |
To see everything that's new and changed, see the full Windows App SDK 1.8.11 release notes.
Try it out
- Download the 1.8.260804001 NuGet package to use WinAppSDK 1.8 in your app.
Getting started
To get started using Windows App SDK to develop Windows apps, check out the following documentation: