Microsoft veröffentlicht Windows UI Library 3 Preview 4

Symbol für die Lesezeit 9 Minute. lesen


Leser unterstützen MSpoweruser. Wir erhalten möglicherweise eine Provision, wenn Sie über unsere Links kaufen. Tooltip-Symbol

Lesen Sie unsere Offenlegungsseite, um herauszufinden, wie Sie MSPoweruser dabei helfen können, das Redaktionsteam zu unterstützen Lesen Sie weiter

Winui 3

WinUI ist eine Benutzeroberflächenebene, die moderne Steuerelemente und Stile zum Erstellen von Windows-Apps enthält, sowohl für Desktop als auch für UWP. Als native UI-Schicht in Windows verkörpert es Fluent Design und verleiht jeder Windows-App das ausgefeilte Gefühl, das Benutzer erwarten.

[lwptoc title=“WinUI Library 3 Preview 4″ width=“40%“ float=“right“]

WinUI 3 ist die neueste Version des WinUI-Frameworks, die später in diesem Jahr ausgeliefert wird. Es erweitert WinUI dramatisch zu einem vollständigen UX-Framework und macht WinUI für alle Arten von Windows-Apps – von Win32 bis UWP – zur Verwendung als UI-Schicht verfügbar. Wenn sie fertig ist, kann jede Windows-App ihre modernen Steuerelemente nutzen, die unabhängig von der Windows-Version funktionieren, auf der sie ausgeführt werden.

Heute erschienen, WinUI 3 Vorschau 4 ist eine Stabilitätsvorschau, die kritische Fehlerbehebungen und andere allgemeine Verbesserungen für das Framework enthält.

Funktionen, die in Vorschau 4 eingeführt wurden

  • Parität mit WinUI 2.5 (enthält InfoBar-Steuerelement, neue Funktionen in ProgressRing und NavigationView sowie Fehlerbehebungen)
  • Benutzerdefinierte Titelleistenfunktionen: Neue Window.ExtendsContentIntoTitleBar- und Window.SetTitleBar-APIs, mit denen Entwickler benutzerdefinierte Titelleisten in Desktop-Apps erstellen können.
  • VirtualSurfaceImageSource-Unterstützung

Neue Features und Fähigkeiten, die in früheren WinUI 3 Previews eingeführt wurden

Die folgenden Features und Funktionen wurden in WinUI 3 Preview 1-3 eingeführt und werden weiterhin in WinUI 3 Preview 4 unterstützt.

  • Möglichkeit, Desktop-Apps mit WinUI zu erstellen, einschließlich .NET 5 für Win32-Apps
  • RadialGradientPinsel
  • TabView-Updates
  • Aktualisierungen des dunklen Designs
  • Verbesserungen und Updates zu Webansicht2
    • Unterstützung für hohe DPI
    • Unterstützung für die Größenänderung und das Verschieben von Fenstern
    • Aktualisiert, um auf eine neuere Version von Edge abzuzielen
    • Es ist nicht mehr erforderlich, auf ein WebView2-spezifisches Nuget-Paket zu verweisen
  • SwapChainPanel
  • MRT-Core-Unterstützung
    • Dies macht Apps beim Start schneller und leichter und bietet eine schnellere Ressourcensuche.
  • ARM64-Unterstützung
  • Drag & Drop innerhalb und außerhalb von Apps
  • RenderTargetBitmap (derzeit nur XAML-Inhalt – kein SwapChainPanel-Inhalt)
  • Benutzerdefinierte Cursorunterstützung
  • Off-Thread-Eingabe
  • Verbesserungen unserer Tooling- / Entwicklererfahrung:
    • Live Visual Tree, Hot Reload, Live Property Explorer und ähnliche Tools
    • Intellisense für WinUI 3
  • Für die Open-Source-Migration erforderliche Verbesserungen

Weitere Informationen zu den Vorteilen von WinUI 3 und der WinUI-Roadmap finden Sie unter Roadmap für die Bibliothek der Windows-Benutzeroberfläche auf GitHub.

Liste der in Vorschau 4 behobenen Fehler

Nachfolgend finden Sie eine Liste der benutzerbezogenen Fehler, die das Team seit Vorschau 3 behoben hat. Es wurde auch viel an der Stabilisierung und Verbesserung unserer Tests gearbeitet.

  • Diese Version hat eine neue Version von CS/WinRT und das Windows SDK übernommen, wodurch die folgenden Fehler behoben wurden:
    • Absturz beim Binden an eine URI-Eigenschaft mit {Binding}
    • C#/WinRT-Marshal-Funktionen arbeiten nicht ordnungsgemäß mit .NET 5 zusammen
  • WinUI 3 stürzt ab, wenn es auf Windows Insider Builds ausgeführt wird
    • Vielen Dank an mehrere Community-Mitwirkende, die diesen Fehler auf GitHub gemeldet haben!
  • WebView2 wendet die Sprache/das Gebietsschema der Host-App nicht auf CoreWebView2Environment an
  • Das DataGrid-Steuerelement des Windows Community Toolkit stürzt die App beim Start ab/wenn Bildlaufleisten angezeigt werden
    • Vielen Dank an mehrere Community-Mitwirkende, die diesen Fehler auf GitHub gemeldet haben!
  • Die Seitenwiedergabe gerät in einen schlechten Zustand, wenn sich der Anzeigemodus ändert
  • Absturz bei Verwendung der Sprach-ComboBox in CalendarView
  • WinUI 3 Desktop: Kann WebView2 nicht verlassen
  • WinUI 3 Desktop: TreeView mit abgeleiteten TreeViewNodes stürzt ab
  • WinUI 3 Desktop: Text kann nicht in TextBox innerhalb von ContentDialog eingegeben werden
  • WinUI 3 Desktop: ALT und F6 funktionieren nicht
  • Das alte entfernte SwapChainPanel wird über dem neuen SwapChain gerendert
  • WinUI 3 Desktop: Scrollen mit Trackpad nicht möglich
  • Absturz bei Verwendung des NavigationView-Steuerelements mit mehreren Fenstern im selben Thread
  • Barrierefreiheitsproblem: Fokusrechteck beim Start der WinUI-Desktop-App anzeigen
  • Zugriffsverletzung beim Scrollen in DataGrid
  • WinUI 3 Desktop: Tab-Wechsel funktioniert nicht
  • Drag & Drop auf GridView schlägt in Desktop-Anwendung mit WinUI-XAML-Inseln fehl
  • Barrierefreiheitsproblem: Scrollen mit den Bild-auf/Bild-ab-Tasten auf WinUI 3 Desktop nicht möglich
  • WebView2 hat die falsche Darstellungsgröße
  • WebView2 stürzt beim Klicken nach dem Öffnen von MenuFlyout ab
  • WinUI 3 Desktop: Der Versuch, das Flyout von DropDownButton oder SplitButton herunterzufahren, führt zum Absturz der App
  • WebView2: Doppelklick mit der rechten Maustaste verursacht einen Absturz
  • Das Klicken auf einen ToggleSplitButton führt zum Absturz der Anwendung
  • WinUI 3 Desktop: Leeres DesktopWindowXamlSource-Fenster in der Taskleiste sichtbar
  • WinUI 3 Desktop: DataGrid wird nicht angezeigt
  • WinUI 3 Desktop: Dateien können nicht auf dem Grid abgelegt werden
  • WinUI 3 Desktop: ItemsRepeater-Absturz in WinUI 3 Preview 2
  • AccessViolationException wird beim Aktualisieren von Bindungen ausgelöst
  • WinUI 3 Desktop: App stürzt beim Scrollen der NavigationView ab
  • ItemsControl wird nicht aktualisiert, während Elemente in seiner ItemsSource-Auflistung dynamisch hinzugefügt oder entfernt werden.
  • Kompilierfehler C2760 in App.xaml.gh, wenn der C++-Konformitätsmodus aktiviert ist

Einschränkungen und bekannte Probleme

Die Version Preview 4 ist einfach eine Vorschau mit Fehlern, Einschränkungen und anderen Problemen mit den Szenarien rund um Desktop-Apps, die besonders neu sind.

Die folgenden Punkte sind einige der bekannten Probleme mit WinUI 3 Preview 4.

Entwicklerwerkzeuge

  • Es werden nur C#- und C++/WinRT-Apps unterstützt
  • Desktop-Apps unterstützen .NET 5 und C# 9 und müssen in eine MSIX-App gepackt werden
  • UWP-Apps unterstützen .NET Native und C# 7.3
  • Entwicklertools und IntelliSense funktionieren in Visual Studio Version 16.8 möglicherweise nicht ordnungsgemäß.
  • Keine XAML-Designer-Unterstützung
  • Neue C++/CX-Apps werden nicht unterstützt, Ihre bestehenden Apps funktionieren jedoch weiterhin (bitte wechseln Sie so schnell wie möglich zu C++/WinRT).
  • Die Unterstützung mehrerer Fenster in Desktop-Apps ist in Arbeit, aber noch nicht vollständig und stabil.
    • Bitte melden Sie einen Fehler in unserem Repo, wenn Sie neue Probleme oder Regressionen mit Multi-Window-Verhalten finden.
  • Eine unverpackte Desktop-Bereitstellung wird nicht unterstützt
  • Stellen Sie beim Ausführen einer Desktop-App mit F5 sicher, dass Sie das Paketierungsprojekt ausführen. Durch Drücken von F5 im App-Projekt wird eine entpackte App ausgeführt, die von WinUI 3 noch nicht unterstützt wird.

Fehlende Plattformfunktionen

  • Xbox-Unterstützung
  • HoloLens-Unterstützung
  • Fenster-Popups
    • Genauer gesagt, die ShouldConstrainToRootBounds Die Eigenschaft verhält sich immer so, als wäre sie eingestellt true, unabhängig vom Immobilienwert.
  • Farbunterstützung
  • Acryl
  • MediaElement und MediaPlayerElement
  • MapControl
  • RenderTargetBitmap für SwapChainPanel und Nicht-XAML-Inhalt
  • SwapChainPanel unterstützt keine Transparenz
  • Global Reveal verwendet ein Fallback-Verhalten, einen soliden Pinsel
  • XAML-Inseln werden in dieser Version nicht unterstützt
  • Ökosystembibliotheken von Drittanbietern funktionieren nicht vollständig
  • IMEs funktionieren nicht

Bekannte Probleme

  • Alt+F4 schließt Desktop-App-Fenster nicht.
  • Aufgrund von Änderungen mit Kernfenster, funktionieren die folgenden WinRT-APIs möglicherweise nicht mehr Desktop Apps wie erwartet:

    Weitere Informationen zur Verwendung von WinRT-APIs in Ihrer WinUI 3-Desktop-App finden Sie unter Für Desktop-Apps verfügbare Windows-Runtime-APIs.

  • Windows.UI.ViewManagement.UISettings.ColorValuesChanged-Ereignis wird in Desktop-Apps nicht mehr unterstützt. Dies kann zu Problemen führen, wenn Sie es verwenden, um Änderungen in Windows-Designs zu erkennen.
  • Diese Version enthält einige experimentelle APIs. Diese wurden vom Team nicht gründlich getestet und können unbekannte Probleme aufweisen. Bitte einen Fehler melden in unserem Repo, wenn Sie auf Probleme stoßen.
  • Bisher mussten Sie zum Abrufen einer CompositionCapabilities-Instanz aufrufen CompositionCapabilites.GetForCurrentView(). Die von diesem Aufruf zurückgegebenen Fähigkeiten waren jedoch nicht abhängig von der Ansicht. Um dies anzugehen und widerzuspiegeln, haben wir die Statik GetForCurrentView() in dieser Version gelöscht, sodass Sie jetzt eine erstellen können Kompositionsfähigkeiten Objekt direkt.
  • Für C#-UWP-Apps: Das WinUI 3-Framework ist ein Satz von WinRT-Komponenten, die von C++ (unter Verwendung von C++/WinRT) oder C# verwendet werden können. Bei der Verwendung von C# gibt es je nach App-Modell zwei Versionen von .NET: Wenn Sie WinUI 3 in einer UWP-App verwenden, verwenden Sie .NET Native; bei Verwendung in einer Desktop-App verwenden Sie .NET 5 (und C#/WinRT). WinUI 3-App: Einige Typen befinden sich in a Microsoft Namensraum statt a System Namensraum. Zum Beispiel eher als die INotifyPropertyChanged Schnittstelle in der System.ComponentModel Namensraum, es ist in der Microsoft.UI.Xaml.Data Namensraum. Dies gilt für:
    • INotifyPropertyChanged (und verwandte Typen)
    • INotifyCollectionChanged
    • ICommand

    Das System Namespace-Versionen existieren noch, können aber nicht mit WinUI 3 verwendet werden ObservableCollection funktioniert nicht unverändert in WinUI 3 C# UWP-Apps. Eine Problemumgehung finden Sie unter CollectionsInterop-Beispiel der Beispiel für die Galerie der XAML-Steuerelemente.

Was kommt als nächstes?

Entwickler können einen Blick auf die detaillierten Informationen von Microsoft werfen Feature-Roadmap um zu sehen, wann bestimmte Funktionen in WinUI 3 eingeführt werden.

Installieren Sie WinUI 3 Preview 4

WinUI 3 Preview 4 enthält Visual Studio-Projektvorlagen, um den Einstieg in die Entwicklung von Apps mit einer WinUI-basierten Benutzeroberfläche zu erleichtern, sowie ein NuGet-Paket, das die WinUI-Bibliotheken enthält. Gehen Sie folgendermaßen vor, um WinUI 3 Preview 4 zu installieren.

Windows-Community-Toolkit

Wenn Sie das Windows Community Toolkit verwenden, Laden Sie die neueste Version herunter.

Abgesehen von der Einschränkungen und bekannte Probleme, ähnelt das Erstellen einer App mithilfe der WinUI-Projekte dem Erstellen einer UWP-App mit XAML und WinUI 2.x. Daher die meisten Anleitung Dokumentation für UWP-Apps und die Windows.UI WinRT-Namespaces im Windows SDK ist anwendbar.

Weitere Informationen zu den ersten Schritten mit den WinUI-Projektvorlagen finden Sie in den folgenden Artikeln:

Eine API-Referenzdokumentation für diese Version ist in Kürze verfügbar, aber in der Zwischenzeit können sich Entwickler die WinUI 3 API-Referenzdokumentation für Preview 3.

Wenn Sie ein Projekt mit WinUI 3 Preview 3 erstellt haben, können Sie Ihr Projekt auf die Verwendung von Preview 4 aktualisieren WinUI-GitHub-Repository Detaillierte Anweisungen.

Um die neuesten Toolfeatures nutzen zu können, die in WinUI 3 Preview 4 hinzugefügt wurden, wie Hot Reload, Live Visual Tree und Live Property Explorer, müssen Sie die neueste Vorschauversion von Visual Studio mit der neuesten WinUI 3-Vorschau verwenden und diese unbedingt aktivieren WinUI-Tools in Visual Studio-Vorschaufeatures, wie in beschrieben Anweisungen hier.

Siehe die WinUI 3 Preview 4-Zweig der XAML-Steuerelementgalerie für eine Beispiel-App, die alle Steuerelemente und Funktionen von WinUI 3 Preview 4 enthält.


Beispiel für die WinUI 3 Preview 4 XAML Controls Gallery-App

Diese Vorschauversion von WinUI 3 ist für eine frühzeitige Evaluierung und zum Sammeln von Feedback von der Entwickler-Community vorgesehen. Es sollte NICHT für Produktions-Apps verwendet werden. Microsoft wird bis 3 weiterhin Vorschauversionen von WinUI 2021 ausliefern, gefolgt von der ersten offiziellen, unterstützten Version im März 2021.

Bitte verwenden Sie die WinUI-GitHub-Repo um Feedback zu geben und Vorschläge und Probleme zu protokollieren.

Mehr zu den Themen: Entwickler, Microsoft, Winui 3 Vorschau 4

Hinterlassen Sie uns einen Kommentar

E-Mail-Adresse wird nicht veröffentlicht. Pflichtfelder sind MIT * gekennzeichnet. *