Windows UI Library
This article needs additional citations for verification. (July 2012) |
Other names | Windows UI Library, WinUI, UWP XAML, WinRT XAML |
---|---|
Developer(s) | Microsoft |
Initial release | September 2011 |
Stable release | 1.5.2 / April 12, 2024 |
Preview release | 1.5.0-preview1 / February 14, 2024 |
Repository | |
Written in | C++, C# |
Operating system | Microsoft Windows[1] |
Platform | Intel x86 32-bit, x86-64 and ARM |
Type | Application framework |
License | MIT License after 2018-12-04;[2] Freeware before |
Website | microsoft |
Windows UI Library (WinUI codenamed "Jupiter",[3][4] and also known as UWP XAML and WinRT XAML) is a user interface API that is part of the Windows Runtime programming model that forms the backbone of Universal Windows Platform apps (formerly known as Metro-style or Immersive) for the Windows 8, Windows 8.1, Windows 10 and Windows Phone 8.1 operating systems. It enables declaring user interfaces using Extensible Application Markup Language (XAML) technology.
WinUI is one of the multiple UI frameworks provided built-in for the Windows Runtime; the others being HTML5 (e.g., via WinJS) and DirectX.
WinUI 2 is an extension library for UWP XAML containing controls and styling that match the Windows 11 design language. It is shipped through NuGet and is distinct from the UWP XAML framework, which provides the actual rendering engine; though, they may be treated as synonyms.
WinUI 3 decouples WinRT XAML from the operating system as a separate package to be updated quickly and make new features work on older versions of Windows.[5] It is part of Windows App SDK (codenamed "Project Reunion"), a Microsoft effort to reconcile the Windows desktop (Win32) and the UWP low IL app model.
Windows Phone
[edit]Up to Windows Phone 8.0 WinRT XAML was not supported and XAML applications were based on Silverlight XAML and deployed in XAP format.
In Windows Phone 8.1 WinRT XAML is available along with improved Windows Runtime support. This convergence between platforms enable Universal apps that can target both Windows 8.1 and Windows Phone 8.1 while sharing most of the code, including user interface. The Windows Phone 8.1 is still capable of running Silverlight XAML apps and new features and API were also added to this too (called Silverlight 8.1[6])
Related technologies
[edit]WinUI is related to Windows Presentation Foundation (WPF) and Silverlight (WPF/E)—similar XAML-based UI frameworks used for desktop applications and portable applications respectively. WinUI uses a lot of the same names for its APIs as both of these older technologies—especially Silverlight, but its use is limited to the Windows (specifically Windows 8 and later) as with WPF. The major difference is that WPF and Silverlight are written in C# and require using .NET languages such as C# or Visual Basic, while WinRT XAML is part of the Windows Runtime, written in C++ and available to native code, and has tools for development, with C++/CX or C++/WinRT.
See also
[edit]- .NET Multi-platform App UI (.NET MAUI)
- Windows Template Studio (WinTS)
- Uno Platform
References
[edit]- ^ "XAML overview". Windows app development. Microsoft Docs. October 13, 2015. Retrieved October 15, 2021.
- ^ Gallo, Kevin (December 4, 2018). "Announcing Open Source of WPF, Windows Forms, and WinUI at Microsoft Connect(); 2018". Windows Developer. Windows Blogs. Retrieved 2021-10-09.
- ^ Nixon, Jerry (June 20, 2012). "Windows 8: 15 More Reasons why I choose XAML over HTML5". Jerry Nixon blog. Retrieved October 15, 2021.
- ^ Nixon, Jerry; Heuer, Tim (January 24, 2013). "XAML and Windows 8 App Development". DevRadio. Channel 9. Retrieved October 15, 2021.
- ^ Ramos, Miguel (July 7, 2020). "A deep-dive into WinUI 3 in desktop apps". Windows Developer. Windows Blogs. Retrieved May 28, 2021.
- ^ "Windows Phone Silverlight 8.1 apps". Windows 8 development. Microsoft Docs. May 20, 2016. Retrieved October 15, 2021.
External links
[edit]- Official website
- microsoft-ui-xaml on GitHub
- Xaml-Controls-Gallery on GitHub
- Microsoft.UI.Xaml namespace documentation[permanent dead link ] on Microsoft Docs
- Windows.UI.Xaml namespace documentation on Microsoft Docs
- Channel 9 - XAML presentations from the 2011 Build conference
- WinRTXamlToolkit on GitHub