Skip to content

WinUI 3 in WinAppSDK 2.3.1

Latest

Choose a tag to compare

@agniuks agniuks released this 17 Jul 02:45

WinUI 3 in Windows App SDK 2.3.1

This release of WinUI 3 ships as part of Windows App SDK 2.3.1. To use it in your app, install the Microsoft.WindowsAppSDK 2.3.1 NuGet package.

What's new in WinUI 3:

  • XamlOptionalChanges. A new API that lets apps opt into optional breaking changes before XAML initialization. In the same release, the DISABLE_XAML_GENERATED_MAIN preprocessor constant now renames the generated main() method (C#: XamlGeneratedProgram.XamlGeneratedMain(); C++/WinRT: wXamlGeneratedMain()) instead of removing it, so a custom main() can invoke the default implementation. See PR microsoft/microsoft-ui-xaml#11110.
  • XAML performance optimizations. A broad set of startup, styling, and resource-lookup optimizations. Several are opt-in through the DefaultStyleOptimizations and OptimizeApplyStyles XamlChangeIds, including optimized XamlControlsResources styles, a lighter FontIcon/BitmapIcon visual tree, and faster ThemeResource and ResourceDictionary lookups.

Bug fixes:

  • Fixed a use-after-free crash in CPopupRoot::ReplayPointerUpdate when a popup is closed synchronously during pointer-event replay.
  • Fixed a crash in MediaPlayerPresenter when the GPU device is lost during media playback event handling.
  • Fixed a crash (null LayoutState dereference) in UniformGridLayout and FlowLayout that could occur when a collection change was raised on an ItemsRepeater that was no longer loaded.
  • Fixed windowed and non-windowed flyouts appearing misaligned (about one item-height above the parent item) for side placements when they open upward near the bottom of the screen.
  • Fixed an access violation in CXamlIslandRoot::GetScreenOffset triggered by re-entrant UI Automation queries during XAML island teardown.
  • Fixed a fail-fast in CPopup::RemoveChild when a ToolTip close pumped messages and re-entered the close path.

For the full set of changes across Windows App SDK 2.3.1, see the Windows App SDK 2.3.1 release notes.

Try it out