Windows UI Library 3.0 (WinUI 3.0)

Eintrag zuletzt aktualisiert am: 19.05.2020


Die GUI-Bibliothek "WinUI 3.0" ist der Nachfolger der Universal Windows Platform (UWP), der in Windows 10 eingeführte neue Name für die "Modern Apps". Während UWP allein auf dem WinRT-API aufsetzt und daher nicht alle Funktionen des Betriebssystems und alle lokalen Ressourcen verwenden kann, kann der eine WinUI 3-basierte Anwendung wahlweise WinRT und/oder Win32 nutzen. Damit stehen ihr alle Möglichkeiten des Windows-Betriebssystems zur Verfügung. Während in UWP die Weiterentwicklung der Steuerelemente mit neuen Betriebssystemversionen erfolgte, sind die komplett in C++ als Open Source auf GitHub [https://github.com/microsoft/microsoft-ui-xaml] geschriebenen WinUI 3-Steuerelemente von dem Betriebssystem entkoppelt; eine WinUI 3-Anwendung läuft daher auf allen Windows 10-Versionen ab dem Creators Update aus dem Frühjahr 2017.

Als neues Steuerelemente wird WinUI 3 ein WebView-Steuerelement auf Basis "Microsoft Edge Chromium" sowie die Eingabevalidierung mit der Schnittstelle INotifyDataErrorInfo bieten. Die bereits seit 2019 in UWP verfügbare Einbettung von Steuerelementen in ältere GUI-Frameworks wie Microsoft Foundation Classes (MFC), Windows Forms und Windows Presentation Foundation (WPF) gibt es auch in WinUI 3. Zukünftig wird Microsoft dreimal jährlich neue Funktionen für WinUI 3 veröffentlichen.

Erklärung für den Namen WinUI 3
Ursprünglich ("Windows UI Library 1"): UWP-Steuerelemente an jeweiliges WinRT-API-Version in Windows 10 gekoppet, Closed Source
Windows UI Library 2: Open Souce, Down-Level-Nutzung der Steuerelemente in älteren Windows 10-Versionen

Zeitplan
September 2019: Alpha 1
Feb 2020: Alpha 2
19.5.2020: Preview 1

Details von Microsoft
"At the Microsoft Build conference in May 2019 we shared our plans for WinUI 3.0, which will greatly expand the scope of WinUI to include the full native Windows UI platform."
[https://github.com/Microsoft/microsoft-ui-xaml]

"This means that the Xaml framework will now be developed on GitHub and ship out of band as NuGet packages. The existing UWP Xaml APIs that ship as part of the OS will no longer receive new feature updates. They will still receive security updates and critical fixes according to the Windows 10 support lifecycle.

The Universal Windows Platform contains more than just the Xaml framework (e.g. application and security model, media pipeline, Xbox and Windows 10 shell integrations, broad device support) and will continue to evolve. All new Xaml features will just be developed and ship as part of WinUI instead.

Language: .NET (C#, Visual Basic), standard C++
App model: UWP, Win32
Packaging: MSIX, AppX for the Microsoft Store, unpackaged
Interop: use WinUI 3 to extend existing WPF, WinForms and MFC apps with modern Fluent UI

WinUI 3.0 should be backward-compatible to Creators Update (15063) on Windows 10, plus limited support on Windows 8.1"
[https://github.com/microsoft/microsoft-ui-xaml/blob/master/docs/roadmap.md]