Announcing Uno Platform 2.2 – Windows Community Toolkit support, Performance Improvements and more

The Uno 2.2 release is packed with new features, performance improvements and bug fixes, even if it’s closely following the 2.1 release! In addition to expanding our support for Windows Community Toolkit (WCT)  today we are also shipping additional 70 smaller features and performance improvements.

If you are following our GitHub repo (hint – you should star it – many more features coming), you may have noticed we are also hard at work on adding support for macOS apps (Thanks @MartinZikmund), and while we still do not have anything to announce, it’s taking shape! The #WinUIEverywhere vision is closer by the day!


About Uno Platform

For those new to Uno Platform – it enables for creation of single-source C# and XAML apps which run natively on iOS and Android, and Web via WebAssembly. Uno Platform is Open Source (Apache 2.0) and available on GitHub. To learn more about Uno Platform, see how it works, or create a small sample app.

Among the implemented features in this release, you’ll find:

  • Support for MenuFlyout, UIElement.ContextFlyout
  • Support for MenuBar from WinUI 2
  • Support for ScrollBar
  • Add support for dotnet new unoapp, Visual Studio Code for WebAssembly and macOS templates
  • Support for Electron hosted apps
  • ImageSource.SetSourceAsync support for WebAssembly (Thanks @SuperJMN)
  • Support for ColorAnimation
  • Support for Pedometer for iOS and Android (Thanks @MartinZikmund)
  • Suppport for mouse wheel events (PointerWheelChanged) on WebAssembly
  • Support for DropDownButton from WinUI 2 (Thanks @MartinZikmund)
  • Many performance and memory updates impacting all platforms at various levels, such as giving an estimated 20% performance improvement on controls creation on WebAssembly. A more detailed post with benchmarks will follow soon on that topic.
  • Support for ms-appdata paths in Image, MediaPlayer (Thanks @MartinZikmund)

Uno Platform is now built using C# 8.0 and Visual Studio 16.5 on Azure DevOps hosted agents, which means that AndroidX and Android 10 support is close by.

And finally, many of the recent updates were targeted at improving the behavior of controls in the Windows Community Toolkit, with enabling DataGrid, TabView and Expander controls. On the topic of the DataGrid, there’s still lots of work to be done, particularly around performance under WebAssembly, but this release updates now make the control usable, and we have a complete blog dedicated just to DataGrid, TabView and Expander, including demo app source code. If you are keen on digging into the DataGrid right away, try this sample code for DataGrid, TabView and Expander after upgrading to Uno Platform 2.2.

Next Steps

For a more extensive change log, visit the GitHub releases page. If you are new to Uno Platform, you should go through our Getting Started tutorial. And if you are already using Uno please update your packages to 2.2 via your Visual Studio NuGet package manager!

Jerome Laban, on behalf of Uno Platform team

Share this post: