Freigeben über


Versionshinweise zu Windows App SDK 1.5

Sie können je nach Entwicklungsbedarf zwischen den Kanälen Stable, Preview und Experimental wählen – von zuverlässigen Produktionsbuilds bis hin zum frühen Zugriff auf bevorstehende Features. Erfahren Sie mehr über Veröffentlichungskanäle.

Die aktualisierte Laufzeit und MSIX finden Sie unter Downloads für das Windows App SDK.

Version 1.5.9 (1.5.250108004)

Bugfixes

Dies ist ein Wartungsrelease des Windows App SDK, das wichtige Fehlerbehebungen für das Release 1.5 enthält.

  • Es wurde ein weiteres potenzielles Problem wurde behoben, bei dem ein CommandBar-Menü möglicherweise nicht richtig nach oben statt nach unten geöffnet wird, wenn sich die CommandBar am unteren Rand des Fensters befindet.
  • Ein potenzieller Absturz, der auftritt, wenn die Software auf älterer Grafikhardware ausgeführt wird, wurde behoben.

Version 1.5.8 (1.5.241107002)

Bugfixes > > Dies ist eine Wartungsversion des Windows App SDK, die wichtige Fehlerbehebungen für die Version 1.5 enthält. > > – Ein potenzieller Absturz wurde behoben, wenn die Eingabewarteschlange im Thread in einem fehlerhaften Zustand angezeigt wird. – Einige potenzielle Abstürze wurden behoben, die beim Verwenden von "{x:Bind}" auftreten konnten, indem jede Komponente auf null überprüft wurde. Apps, die diesen Fix benötigen, müssen mit dieser Version neu kompiliert werden. >

Version 1.5.7 (1.5.2410010000)

Bugfixes

Dies ist ein Wartungsrelease des Windows App SDK, das wichtige Fehlerbehebungen für das Release 1.5 enthält.

  • Es wurde eine Erkennung für ein seltenes Szenario hinzugefügt, in dem das Rendern der App beendet und nie wiederhergestellt wird.
  • Ein potenzieller Absturz wurde behoben, wenn ein UI-Thread nicht initialisiert wird.
  • Ein potenzielles Problem wurde behoben, bei dem ein Menü aus einer CommandBar möglicherweise falsch geöffnet wurde, anstatt nach unten, als sich die CommandBar am unteren Rand des Fensters befand.

Version 1.5.6 (1.5.240802000)

Bugfixes

Dies ist ein Wartungsrelease des Windows App SDK, das wichtige Fehlerbehebungen für das Release 1.5 enthält.

  • Es wurde ein Problem behoben, bei dem InputNonClientPointerSource manchmal Eingaben für die Schaltflächen "Min/Max/Schließen" abgebrochen wurden. Weitere Informationen finden Sie im GitHub-Issue #9749.
  • Ein potenzieller Absturz beim Schließen eines Fensters beim Verwenden eines Touchpads wurde behoben.

Version 1.5.5 (1.5.240627000)

Bugfixes

Dies ist ein Wartungsrelease des Windows App SDK, das wichtige Fehlerbehebungen für das Release 1.5 enthält.

  • Ein potenzieller Absturz beim Laden des Bilds wurde behoben, wenn die Bildquelle geändert wird, bevor das Laden abgeschlossen ist.
  • Ein potenzieller Absturz beim Verwenden wurde InputNonClientPointerSourcebehoben.
  • Es wurde ein Problem behoben, bei dem ein Fenster, das nur ein WebView2-Steuerelement enthält, den anfänglichen Tastaturfokus nicht ordnungsgemäß auf das WebView2 festgelegt hat, sodass es von Tastatur- und Barrierefreiheitstools nicht mehr verwendet werden kann. Weitere Informationen finden Sie unter GitHub-Problem "WebView2Feedback#2330".

Version 1.5.4 (1.5.240607001)

Bugfixes
  • Ein Problem mit dem Fix für GitHub-Problem #8857 wurde behoben, um die "resources.pri"-Datei einer Bibliothek ordnungsgemäß in die "resources.pri" der App zusammenzuführen.
  • Ein Problem wurde behoben, bei dem WebView2 bei jedem Klick zusätzliche Und blurfocus Ereignisse gesendet hat. Weitere Informationen finden Sie im GitHub-Issue #9288. Dies behebt auch Probleme mit Dropdowns, die nicht reagieren, wie in GitHub-Problem #9566 zu sehen.
  • Es wurde ein Problem behoben, bei dem das Erstellen eines neuen Fensters oder popups alle laufenden Ziehvorgänge abgebrochen hat. Weitere Informationen finden Sie unter GitHub-Problem #9360.
  • Ein Problem wurde behoben, bei dem SVG-Dateien, die ein negatives Viewbox-Element definieren, nicht mehr gerendert wurden. Weitere Informationen finden Sie im GitHub-Issue #9415.
  • Es wurde ein Problem behoben, bei dem x:Bind vor der Verwendung eines schwachen Verweises nicht auf NULL überprüft wurde, was zu einem Absturz führen konnte. Weitere Informationen finden Sie im GitHub-Issue #9551.
  • Es wurde ein Problem behoben, bei dem beim Maximieren eines Fensters ein Cursor zur Größenänderung bei titelleistenrändern fälschlicherweise angezeigt wurde, was auch beim Klicken oder Ziehen in diesen Bereichen zu einem falschen Verhalten führte. Weitere Informationen finden Sie unter GitHub-Problem #8665.

Version 1.5.3 (1.5.240428000)

Bugfixes
  • Es wurde ein Problem behoben, bei dem ItemsRepeater manchmal dazu führte, dass das Fenster an den Anfang verschoben wurde.
  • Es wurde ein möglicher Absturz bei der Aktualisierung des Transparenzstatus einer AcrylicBrush behoben.
  • Es wurde ein Problem behoben, bei dem ItemsRepeater nicht genügend Elemente generiert hat, wenn es sich in einem ShouldConstrainToRootBounds="false" Popup-Fenster befand, das höher oder breiter als das Standardfenster war.
  • Es wurde ein Problem behoben, bei dem Fehler MSB4086 auftreten konnte, wenn die Projektdatei während der Buildzeit keine TargetPlatformVersion angab. Dieser Fehler wurde im Rahmen des GitHub-Problems #9531 ermittelt.

Version 1.5.2 (1.5.240404000)

Updates des Widgetfeedanbieters
  • Feed-Provider können nun Ankündigungen im Widgets-Dashboard anzeigen:
    • Mit der neuen FeedManager.TryShowAnnouncement-API kann ein Feed-Provider beantragen, dass das Widget Dashboard seine Ankündigungen anzeigt. Um Ihre Ankündigung anzuzeigen, erstellen Sie ein FeedAnnouncement-Objekt und rufen die FeedManager.TryShowAnnouncement-API auf.
    • Für Feed-Ankündigungen werden eigene Badges in der Taskleiste angezeigt, die über die FeedAnnouncement-API angepasst werden können.
  • Feed-Provider können sich jetzt für den Erhalt von Analyse- und Fehlerberichten über ihren Anbieter entscheiden, wenn ein Benutzer mit ihm interagiert. Um sich anzumelden, implementieren Sie die Schnittstellen IFeedProviderAnalytics und/oder IFeedProviderErrors durch Ihren Anbieter.

Die Aktualisierungen der Feed-Provider umfassen die folgenden neuen APIs:

Microsoft.Windows.Widgets.Feeds.Providers
 
    FeedAnalyticsInfoReportedArgs
    FeedErrorInfoReportedArgs
    FeedManager
        SendMessageToContent
        TryShowAnnouncement
 
    FeedMessageReceivedArgs
    FeedResourceRequest
    FeedResourceRequestedArgs
    FeedResourceResponse
    IFeedAnnouncementInvokedTarget
    IFeedManager2
    IFeedProviderAnalytics
    IFeedProviderErrors
    IFeedProviderMessage
    IFeedResourceProvider
Microsoft.Windows.Widgets.Notifications
 
    AnnouncementActionKind
    AnnouncementTextColor
    FeedAnnouncement
    FeedAnnouncementInvokedArgs
Fehlerbehebungen
  • Ein Problem wurde behoben, bei dem DispatcherTimer nicht zum richtigen Zeitpunkt ausgelöst wurde, wenn der primäre Bildschirm nicht mit 60 Hz lief.
  • Es wurde ein Problem behoben, bei dem ein Textbox-Eingabemethoden-Editor (IME) falsch positioniert wurde, wenn er mit einem anderen Skalierungsfaktor als 100 % ausgeführt wurde. Weitere Informationen finden Sie im GitHub-Issue #9382.
  • Es wurde ein Problem behoben, bei dem ein Drag-and-Drop-Vorgang, der aus einer anderen Anwendung gestartet wurde, möglicherweise nicht die korrekten Kopier-/Verschiebe-/Verknüpfungsvorgänge zuließ.
  • Ein möglicher Absturz wurde behoben, wenn eine ListView ItemsSource zurückgesetzt wird und sofort den Fokus erhält.
  • Ein Problem wurde behoben, bei dem ShouldConstrainToRootBounds="false" Popups/Flyouts keine geerbte Skalentransformation anwenden. Weitere Informationen finden Sie in den GitHub-Problemen #9118 und #9433.
  • Ein möglicher Absturz wurde behoben, wenn ein Kompositionsobjekt zerstört wird, während eine Animation noch läuft.
  • Ein möglicher Absturz beim Herunterfahren in NavigationView::RevokeNavigationViewItemRevokers wurde behoben.

Version 1.5.1 (1.5.240311000)

Bugfixes

Dies ist ein Wartungsrelease des Windows App SDK, das wichtige Fehlerbehebungen für das Release 1.5 enthält.

  • Es wurde ein Problem behoben, bei dem eigenständige Apps möglicherweise nicht erstellt werden konnten, da „map.html“ nicht kopiert werden konnte.
  • Es wurde ein Problem behoben, bei dem MapControl nicht initialisiert werden konnte, weil gültige Token abgelehnt wurden. Weitere Informationen finden Sie im GitHub-Issue #9324.
  • Es wurde ein Problem behoben, bei dem MapControl mit einem blauen Hintergrund geladen wurde. Weitere Informationen finden Sie im GitHub-Issue #9377.
  • Es wurde ein Problem behoben, bei dem ein NavigationViewItem durch einmaliges Klicken auf das Chevron nicht korrekt erweitert oder reduziert wurde. Dies führte auch dazu, dass Menüs durch Klicken auf das Chevron im PaneDisplayMode="Top"-Modus als leer angezeigt wurden. Weitere Informationen finden Sie in den GitHub-Problemen #9423 und #9426.
  • Es wurde ein Problem behoben, bei dem durch das Antippen eines NavigationViewItem per Berührung oder Stift verhindert wurde, dass das Element auf zukünftige Eingaben reagiert. Weitere Informationen finden Sie im GitHub-Issue #9429.
  • Es wurde ein Absturz beim Klicken auf ein Element im NavigationView.PaneFooter-Bereich behoben. Weitere Informationen finden Sie im GitHub-Issue #9396.
  • Es wurde ein Problem behoben, bei dem Menüsymbole manchmal an der falschen Stelle angezeigt wurden. Weitere Informationen finden Sie im GitHub-Issue #9409.
  • Es wurde ein Problem behoben, bei dem der Acryl-Hintergrund in Menüs erst dann angezeigt wurde, wenn vom Fenster weg- und wieder zum Fenster zurückgewechselt wurde. Weitere Informationen finden Sie im GitHub-Issue #9406.
  • Es wurde ein möglicher Absturz bei der Initialisierung von TextBox/RichEditBox behoben. Weitere Informationen finden Sie im GitHub-Issue #9216.
  • Es wurden einige auffällige Ausnahmen behoben, die NavigationView beim Zerstören ausgelöst und abgefangen hat.
  • Es wurde ein Problem behoben, bei dem aufgrund einer fehlerhaften PointerCaptureLost-Meldungsauslösung eine „Zwei-Finger-Zoom“-Geste manchmal als Schwenken oder Tippen angezeigt wurde.

Version 1.5

Aktualisierungen für Laufzeit und Herunterfahren von XAML-Inseln

Es gibt einen Verhaltensunterschied zwischen Windows App SDK 1.4 und Windows App SDK 1.5 für XAML Islands-basierte Apps, wenn das letzte XAML-Fenster in einem beliebigen Thread geschlossen wird.

  • In Windows App SDK 1.4 beendet die XAML-Laufzeit immer die Ereignisschleife des Threads, wenn das letzte XAML-Fenster in einem Thread geschlossen wird.
  • In Windows App SDK 1.5:
    • Wenn Es sich bei Ihrer App um eine WinUI-Desktop-App handelt, entspricht das Standardverhalten weiterhin dem in Windows App SDK 1.4.
    • Wenn Sie XAML für die DesktopWindowXamlSource („XAML-Inseln“) API verwenden, ist das Standardverhalten jetzt, dass XAML die Ereignisschleife des Threads nicht automatisch beendet.
    • In beiden Modi können Sie dieses Verhalten ändern, indem Sie die Eigenschaft Application.DispatcherShutdownMode festlegen.

Weitere Informationen finden Sie in der Dokumentation für die Application.DispatcherShutdownMode Eigenschaft, sofern verfügbar. Dies vervollständigt den GitHub-Vorschlag #8492.

Es gibt einen Unterschied im Verhalten zwischen Windows-App-SDK 1.4 und Windows-App-SDK 1.5 bei Anwendungen, die auf XAML-Islands basieren, in Bezug auf die Lebensdauer der XAML-Laufzeitumgebung.

  • In Windows App SDK 1.4 wird die XAML-Laufzeit in einem Thread heruntergefahren, wenn entweder alle WindowsXamlManager objekte DesktopWindowXamlSource in einem bestimmten Thread geschlossen oder heruntergefahren werden oder die DispatcherQueue Ausführung in diesem Thread heruntergefahren wird (in diesem Fall wird die XAML-Laufzeit während der DispatcherQueue.FrameworkShutdownStarting Phase heruntergefahren).
  • In Windows App SDK 1.5 wird die XAML-Laufzeit nur dann auf einem Thread heruntergefahren, wenn der DispatcherQueue, der auf diesem Thread ausgeführt wird, heruntergefahren wird (die Xaml-Laufzeit wird während der DispatcherQueue.FrameworkShutdownStarting Phase immer heruntergefahren).

Weitere Informationen finden Sie in der Dokumentation zur WindowsXamlManager Klasse, sofern verfügbar.

Es gibt einen Verhaltensunterschied auf WindowsXamlManager.InitializeForCurrentThread():

  • In der Windows App SDK 1.4 gibt WindowsXamlManager.InitializeForCurrentThread() bei jedem Aufruf eine eindeutige Instanz eines WindowsXamlManager-Objekts zurück.
  • In Windows App SDK 1.5 gibt WindowsXamlManager.InitializeForCurrentThread() eine vorhandene Instanz zurück, wenn bereits eine im Thread existiert. Close/Dispose() wird jetzt ignoriert.
WinUI-Karten-Steuerelement

Die WinUI Maps-Steuerung ist jetzt verfügbar! Dieses Steuerelement wird von WebView2 und Azure Karten unterstützt und stellt die folgenden Features bereit:

  • Verschieben und Zoomen mit den Kartenschaltflächen oder per Toucheingabe.
  • Ändern des Stils der Karte in Satelliten-, Gelände- oder Straßenansicht.
  • Programmgesteuertes Hinzufügen von interagierbaren Pins mit vom Entwickler anpassbaren Symbolen zur Karte.
  • Entwickleranpassung für die Ausrichtung der Karte beim ersten Laden.
  • Kontrolle für Entwickler über das Ausblenden oder Anzeigen der Schaltflächen zum Schwenken, Zoomen und Kartenstilen.

WinUI 3 Karten-Steuerelement

Hinweis

Um das Maps Steuerelement zu verwenden, benötigen Sie einen Azure Karten-Schlüssel. Informationen zum Erstellen des Schlüssels finden Sie auf der Dokumentationsseite von Azure Karten zum Erstellen einer Web-App.

Das Maps Steuerelement ist völlig neu und wir freuen uns über Ihr Feedback, um ihre zukünftige Richtung zu bewerten!

Neues SelectorBar-Steuerelement

In Version 1.5 haben wir ein neues Steuerelement SelectorBar hinzugefügt, mit dem Benutzer zwischen mehreren Datenansichten wechseln können. Dieses Steuerelement war auf unserer 1.5-Roadmap bisher als „SegmentedControl“ bekannt.

WinUI 3 SelectorBar-Steuerelement

Beschriftungen in den primären Befehlen "CommandBarFlyout"

Das Bildmaterial von CommandBarFlyout wurde aktualisiert, um eine Textbeschriftung für die Elemente im primären Befehlsbereich anzuzeigen, wenn die Eigenschaft Label auf AppBarButton eingestellt wurde. Bisher wurde für die primären Befehle im Bereich CommandBarFlyout nur ein Symbol angezeigt, jetzt können sie sowohl ein Symbol als auch eine Beschriftung anzeigen, um die Benutzerfreundlichkeit zu verbessern.

WinUI 3 CommandBarFlyout-Bezeichnungen

WebView2-Unterstützung für benutzerdefinierte Umgebung/Optionen

Das WinUI WebView2-Steuerelement bietet nun die Möglichkeit, das zugrunde liegende CoreWebView2-Objekt mit einem benutzerdefinierten CoreWebView2Environment und CoreWebView2ControllerOptions anzupassen. So kann der App-Autor einen alternativen Pfad angeben, von dem aus die WebView2Runtime geladen werden soll, einen anderen UserDataFolder verwenden oder Optionen wie IsPrivateModeEnabled und ScriptLocale setzen.

Unterstützung für .NET 8

In einer kürzlich veröffentlichten Version 1.4 haben wir Unterstützung für .NET 8 hinzugefügt, aber die Warnung vor der Verwendung von plattformspezifischen RIDs wurde beibehalten. In Version 1.5 haben wir diese Arbeit abgeschlossen, sodass die Warnung nicht mehr vorhanden ist.

Verbesserte Debugging- und Quellverfügbarkeit

Wir injizieren jetzt Github-Source-Server-Informationen für den Code im Microsoft-ui-xaml-Repository in unsere öffentlichen Symbole, sodass Debugger den Quellcode automatisch herunterladen können. Außerdem haben wir weitere Korrekturen und Verbesserungen an unseren Symbolen im gesamten Windows App SDK vorgenommen, um die Debugerfahrung zu verbessern.

Verbesserte Funktionalität für das Debuggen von Layoutzyklen

Das Debuggen von Layout-Zyklen in einer WinUI-Applikation kann eine Herausforderung sein. Daher bietet das DebugSettings-Objekt in Version 1.5 nun Optionen zum Aktivieren einer verbesserten Protokollierung und von Haltepunkten für den Layout-Prozess, um das Debuggen und Beheben von Layout-Zyklen in der App zu erleichtern.

Weitere neue Features aus dem Windows App SDK
  • Unterstützung für das PublishSingleFile-Bereitstellungsmodell hinzugefügt. Weitere Informationen zu PublishSingleFile finden Sie in der Dokumentation zur Bereitstellung einzelner Dateien.
  • Verbesserungen bei der Unterstützung von Bildschirmlesegeräten, der Textskalierung und anderen barrierefreien Funktionen.
  • Verschiedene Stabilitäts- und Leistungsverbesserungen basierend auf unserem priorisierten GitHub-Bug-Backlog.
Neue Features, die separat veröffentlicht werden

Neue Versionen des Windows App SDK Visual Studio Templates für C# und C++ werden über den Visual Studio Marketplace veröffentlicht und werden einige Wochen nach der Veröffentlichung von 1.5 angezeigt. Mit der neuen Version können die Vorlagen jetzt unabhängig von Windows App SDK-Versionen veröffentlicht werden und bieten uns viel mehr Flexibilität beim Abrufen von Updates für Kunden.

Andere zuvor geplante Features >

In 1.5 haben wir Fortschritte bei den folgenden Funktionen gemacht, die wir in unserer Roadmap angekündigt, aber nicht fertiggestellt haben. Sie werden bis zum Zeitrahmen 1.6 fortgesetzt.

  • Registerkarten-Fenster
  • Drag-n-Drop-Unterstützung für WebView2
    • Um zu verdeutlichen, wird das Ziehen in WebView2 in 1.5 unterstützt, z. B. das Ziehen eines PNG aus Explorer in Bing für die visuelle Suche. Die Arbeit wird in 1.6 fortgesetzt, um das Ziehen aus WebView2 zu unterstützen.
  • Untersuchungen zur Tabellenansicht und zur Tintensteuerung

Die dynamische Beleuchtung wurde vorerst von der Roadmap gestrichen.

Bekannte Probleme
  • Bei der Verwendung von Bibliotheken, die Ressourcen wie .xaml-Dateien enthalten, kann es vorkommen, dass Sie zur Laufzeit eine Fehlermeldung erhalten, die besagt, dass diese Ressourcen nicht gefunden werden können. In diesem Fall kann es erforderlich sein, <ShouldComputeInputPris>true</ShouldComputeInputPris> in die Projektdatei einzufügen, um sicherzustellen, dass diese Ressourcen aufgenommen werden.
  • Das Klicken auf den Chevron eines NavigationViewItem wird nicht mehr korrekt mit einem einzigen Klick erweitert oder reduziert. Ein Doppelklick funktioniert immer noch, ebenso wie ein Klick an anderer Stelle auf NavigationViewItem.
Fehlerbehebungen
  • Es wurde ein Problem behoben, bei dem StackPanel Abstände auf ausgeblendete Elemente anwandte. Weitere Informationen finden Sie im GitHub-Issue #916.
  • Es wurden Probleme behoben, bei denen die Bildlaufsteuerung nach dem Schließen eines anderen Anwendungsfensters nicht mehr funktionierte. Weitere Informationen finden Sie in den GitHub-Ausgaben #9292 und #9355.
  • Ein Absturz wurde behoben, wenn DebugSettings.EnableFrameRateCounter auf true gesetzt wurde, bevor das erste Bild gerendert wurde. Weitere Informationen finden Sie im GitHub-Issue #2835.
  • Ein möglicher Kompilierfehler für C++ wurde behoben, bei dem einige Header nicht die notwendigen Abhängigkeiten enthielten. Beachten Sie, dass sich die Änderung der Reihenfolge #include auf einige Anwendungen auswirken kann, z. B. durch einen Kompilierfehler für IInspectable, wenn die Anwendung eine Version von C++/WinRT verwendet, die älter als 2023 ist. Weitere Informationen finden Sie im GitHub-Issue #9014.
  • Ein Problem wurde behoben, bei dem ElementName Bindungen nicht innerhalb der ItemsRepeaterDataTemplate. Weitere Informationen finden Sie im GitHub-Issue #560.
  • Es wurden Abstürze behoben, wenn eine Anwendung unter Visual Studio mit aktivierter In-App-Symbolleiste ausgeführt wurde. Visual Studio 17.8 Preview 2 oder höher ist erforderlich, um die Korrekturen vollständig nutzen zu können. Weitere Informationen finden Sie im GitHub-Issue #8806.
  • Es wurde ein Problem behoben, bei dem AnnotatedScrollbar manchmal abstürzen konnte, wenn man schnell scrollte.
  • Ein Problem wurde behoben, bei dem der Menütext manchmal abgeschnitten wurde.
  • Es wurde ein Problem behoben, bei dem Lehrtipps keinen richtigen Fokus erhalten haben. Weitere Informationen finden Sie im GitHub-Issue #3257.
  • Es wurde ein Problem behoben, das zum Absturz der Anwendung führte, wenn beim Start TailVisibility von TeachingTip auf Collapsed gesetzt wurde. Weitere Informationen finden Sie im GitHub-Issue #8731.
  • Ein Problem mit der Behandlung von PRI-Dateien bei der Verwendung von Bibliotheken wurde behoben. Weitere Informationen finden Sie im GitHub-Issue #8857.
  • Es wurde ein Problem aus der Version 1.5-experimental2 behoben, bei der die Projektions-DLL nicht generiert wurde. Weitere Informationen finden Sie im GitHub-Issue #4152.
  • Es wurde ein Problem behoben, bei dem die Schaltfläche mit den Auslassungspunkten im Popup „Textformatierung“ der RichEditBox Liste der Aktionen nicht ordnungsgemäß angezeigt wurde. Weitere Informationen finden Sie im GitHub-Issue #9140.
  • Es wurde ein Problem behoben, bei dem die ListView Tastenkombinationen nicht ordnungsgemäß behandelt wurden. Weitere Informationen finden Sie im GitHub-Issue #8063.
  • Ein Zugriffsverletzungsproblem mit der Verwendung AccessKey zum Schließen eines Fensters wurde behoben. Weitere Informationen finden Sie im GitHub-Issue #8648.
  • Es wurde ein Absturz behoben, wenn ein AccessKey zum Schließen eines Fensters verwendet wurde. Weitere Informationen finden Sie im GitHub-Issue #9002.
  • Es wurde ein Problem behoben, das sich auf die Textausrichtung in einem MenuFlyoutItem innerhalb eines MenuBar auswirkt. Weitere Informationen finden Sie im GitHub-Issue #8755.
  • Es wurde ein Problem behoben, bei dem hervorgehobener Text nach einem Rechtsklick nicht hervorgehoben blieb. Weitere Informationen finden Sie im GitHub-Issue #1801.
  • Es wurde ein Problem behoben, das dazu führte, dass inaktive Fenster beim Schließen der App abstürzten. Weitere Informationen finden Sie im GitHub-Issue #8913.
  • Es wurde ein Problem behoben, das dazu führen konnte, dass Anwendungen hängen blieben, wenn mit der mittleren Maustaste gescrollt und unmittelbar danach mit der linken Maustaste geklickt wurde. Weitere Informationen finden Sie im GitHub-Issue #9233.
  • Das Problem, das dazu führte, dass Apps beim Start abstürzen, wenn sie eine benutzerdefinierte NavigationViewItem verwenden, wurde behoben. Weitere Informationen finden Sie im GitHub-Issue #8814.
  • Das Problem mit NavigationView wurde behoben, bei dem die Schaltfläche mit den Auslassungspunkten fälschlicherweise einen Fehler generierte. Weitere Informationen finden Sie im GitHub-Issue #8380.
  • Es wurde ein Problem behoben, bei dem SystemBackdrop nicht ordnungsgemäß in einer App mit mehreren Fenstern gerendert wurde. Weitere Informationen finden Sie im GitHub-Issue #8423.
  • Ein Duplizierungsproblem beim Einfügen an den Anfang von ObservableCollection wurde behoben. Weitere Informationen finden Sie im GitHub-Issue #8370.

Version 1.5 Vorschau 1 (1.5.0-preview1)

Aktualisierungen für Laufzeit und Herunterfahren von XAML-Inseln
  • Es gibt einen Verhaltensunterschied zwischen Windows App SDK 1.4 und Windows App SDK 1.5 für xaml islands-basierte Apps, wenn das letzte XAML-Fenster in einem beliebigen Thread geschlossen wird.
    • In Windows App SDK 1.4 beendet die Xaml-Laufzeit immer die Ereignisschleife des Threads, wenn das letzte XAML-Fenster in einem Thread geschlossen wird.
    • In Windows App SDK 1.5:
      • Wenn Es sich bei Ihrer App um eine WinUI-Desktop-App handelt, entspricht das Standardverhalten weiterhin dem in Windows App SDK 1.4.
      • Wenn Sie Xaml für die DesktopWindowXamlSource ("Xaml Islands")-API verwenden, besteht das Standardverhalten nun darin, dass Xaml die Ereignisschleife des Threads nicht automatisch verlässt.
      • In beiden Modi können Sie dieses Verhalten ändern, indem Sie die Eigenschaft Application.DispatcherShutdownMode festlegen.
    • Weitere Informationen finden Sie in der Dokumentation für die Application.DispatcherShutdownMode Eigenschaft, sofern verfügbar.
  • Es gibt einen Verhaltensunterschied zwischen Windows App SDK 1.4 und Windows App SDK 1.5 für XAML-Insel-basierte Apps hinsichtlich der Lebensdauer der XAML-Laufzeit.
    • In Windows App SDK 1.4 wird die Xaml-Laufzeit in einem Thread heruntergefahren, wenn entweder alle WindowsXamlManager Objekte DesktopWindowXamlSource in einem bestimmten Thread geschlossen oder heruntergefahren werden oder die DispatcherQueue Ausführung in diesem Thread heruntergefahren wird (die Xaml-Laufzeit wird während der DispatcherQueue.FrameworkShutdownStarting Phase heruntergefahren).
    • In Windows App SDK 1.5 wird die Xaml-Laufzeit nur dann auf einem Thread heruntergefahren, wenn der DispatcherQueue, der auf diesem Thread ausgeführt wird, heruntergefahren wird (die Xaml-Laufzeit wird während der DispatcherQueue.FrameworkShutdownStarting Phase heruntergefahren).
    • Weitere Informationen finden Sie in der Dokumentation zur WindowsXamlManager Klasse, sofern verfügbar.
WinUI-Karten-Steuerelement

Die erste Version des WinUI-Steuerelements Maps ist jetzt verfügbar! Dieses Steuerelement wird von WebView2 und Azure Karten unterstützt und stellt die folgenden Features bereit:

  • Verschieben und Zoomen mit den Kartenschaltflächen oder per Toucheingabe.
  • Ändern des Stils der Karte in Satelliten-, Gelände- oder Straßenansicht.
  • Programmgesteuertes Hinzufügen von interagierbaren Pins mit vom Entwickler anpassbaren Symbolen zur Karte.
  • Entwickleranpassung für die Ausrichtung der Karte beim ersten Laden.
  • Kontrolle für Entwickler über das Ausblenden oder Anzeigen der Schaltflächen zum Schwenken, Zoomen und Kartenstilen.

Hinweis

Um das Maps Steuerelement zu verwenden, benötigen Sie einen Azure Karten-Schlüssel. Informationen zum Erstellen des Schlüssels finden Sie auf der Dokumentationsseite von Azure Karten zum Erstellen einer Web-App.

Das Maps Steuerelement ist völlig neu und wir freuen uns über Ihr Feedback, um ihre zukünftige Richtung zu bewerten!

Weitere neue Features aus dem Windows App SDK
Fehlerbehebungen
  • Es wurde ein Problem aus der Version 1.5-experimental2 behoben, bei der die Projektions-DLL nicht generiert wurde. Weitere Informationen finden Sie im GitHub-Issue #4152.
  • Es wurde ein Problem behoben, bei dem die Schaltfläche mit den Auslassungspunkten im Popup „Textformatierung“ der RichEditBox Liste der Aktionen nicht ordnungsgemäß angezeigt wurde. Weitere Informationen finden Sie im GitHub-Issue #9140.
  • Es wurde ein Problem behoben, bei dem die ListView Tastenkombinationen nicht ordnungsgemäß behandelt wurden. Weitere Informationen finden Sie im GitHub-Issue #8063.
  • Ein Zugriffsverletzungsproblem mit der Verwendung AccessKey zum Schließen eines Fensters wurde behoben. Weitere Informationen finden Sie im GitHub-Issue #8648.
  • Es wurde ein Problem behoben, das sich auf die Textausrichtung in einem MenuFlyoutItem innerhalb eines MenuBar auswirkt. Weitere Informationen finden Sie im GitHub-Issue #8755.
  • Es wurde ein Problem behoben, bei dem hervorgehobener Text nach einem Rechtsklick nicht hervorgehoben blieb. Weitere Informationen finden Sie im GitHub-Issue #1801.
  • Es wurde ein Problem behoben, das dazu führte, dass inaktive Fenster beim Schließen der App abstürzten. Weitere Informationen finden Sie im GitHub-Issue #8913.
  • Es wurde ein Problem behoben, das dazu führen konnte, dass Anwendungen hängen blieben, wenn mit der mittleren Maustaste gescrollt und unmittelbar danach mit der linken Maustaste geklickt wurde. Weitere Informationen finden Sie im GitHub-Issue #9233.
Neue APIs in 1.5.0-preview1

Version 1.5-preview1 enthält gegenüber dem stabilen Release 1.4 die folgenden neuen APIs:

Microsoft.Graphics.DirectX
 
    DirectXPixelFormat
        A4B4G4R4
Microsoft.UI.Input
 
    FocusNavigationReason
    FocusNavigationRequest
    FocusNavigationRequestEventArgs
    FocusNavigationResult
    InputFocusController
        DepartFocus
        NavigateFocusRequested
 
    InputFocusNavigationHost
Microsoft.UI.Xaml
 
    Application
        DispatcherShutdownMode

    DebugSettings
        LayoutCycleDebugBreakLevel
        LayoutCycleTracingLevel

    DispatcherShutdownMode
    LayoutCycleDebugBreakLevel
    LayoutCycleTracingLevel
Microsoft.UI.Xaml.Controls
 
    MapControl
    MapControlMapServiceErrorOccurredEventArgs
    MapElement
    MapElementClickEventArgs
    MapElementsLayer
    MapIcon
    MapLayer
    SelectorBar
    SelectorBarItem
    SelectorBarSelectionChangedEventArgs
    WebView2
        EnsureCoreWebView2Async
        EnsureCoreWebView2Async
Microsoft.UI.Xaml.Hosting
 
    WindowsXamlManager
        GetForCurrentThread
        XamlShutdownCompletedOnThread
 
    XamlShutdownCompletedOnThreadEventArgs
Microsoft.Web.WebView2.Core
 
    CoreWebView2
        FrameId

    CoreWebView2AcceleratorKeyPressedEventArgs
        IsBrowserAcceleratorKeyEnabled

    CoreWebView2BrowserExtension
    CoreWebView2BrowsingDataKinds
        ServiceWorkers

    CoreWebView2CustomSchemeRegistration
        CoreWebView2CustomSchemeRegistration (String)
        AllowedOrigins
        SchemeName

    CoreWebView2Environment
        GetProcessExtendedInfosAsync

    CoreWebView2EnvironmentOptions
        AreBrowserExtensionsEnabled
        CustomSchemeRegistrations

    CoreWebView2Frame
        FrameId

    CoreWebView2FrameInfo
        FrameId
        FrameKind
        ParentFrameInfo

    CoreWebView2FrameKind
    CoreWebView2MouseEventKind
        NonClientRightButtonDown
        NonClientRightButtonUp

    CoreWebView2NavigationKind
    CoreWebView2NavigationStartingEventArgs
        NavigationKind

    CoreWebView2NewWindowRequestedEventArgs
        OriginalSourceFrameInfo

    CoreWebView2ProcessExtendedInfo
    CoreWebView2Profile
        AddBrowserExtensionAsync
        Delete
        Deleted
Microsoft.Windows.Management.Deployment
 
    AddPackageOptions
    EnsureReadyOptions
    PackageDeploymentContract
    PackageDeploymentManager
    PackageDeploymentProgress
    PackageDeploymentProgressStatus
    PackageDeploymentResult
    PackageDeploymentStatus
    PackageRuntimeManager
    PackageSet
    PackageSetItem
    PackageSetItemRuntimeDisposition
    PackageSetRuntimeDisposition
    PackageVolume
    ProvisionPackageOptions
    RegisterPackageOptions
    RemovePackageOptions
    StagePackageOptions
    StubPackageOption
Microsoft.Windows.Widgets.Feeds.Providers
 
    CustomQueryParametersRequestedArgs
    CustomQueryParametersUpdateOptions
    FeedDisabledArgs
    FeedEnabledArgs
    FeedManager
    FeedProviderDisabledArgs
    FeedProviderEnabledArgs
    FeedProviderInfo
    IFeedManager
    IFeedProvider

Version 1.5 Experimental (1.5.0-experimental2)

Fehlerbehebungen

Die folgenden Fehlerkorrekturen sind in diesem Release enthalten:

  • Das Problem, das dazu führte, dass Apps beim Start abstürzen, wenn sie eine benutzerdefinierte NavigationViewItem verwenden, wurde behoben. Weitere Informationen finden Sie im GitHub-Issue #8814.
  • Das Problem mit NavigationView wurde behoben, bei dem die Schaltfläche mit den Auslassungspunkten fälschlicherweise einen Fehler generierte. Weitere Informationen finden Sie im GitHub-Issue #8380.
  • Es wurde ein Problem behoben, bei dem SystemBackdrop nicht ordnungsgemäß in einer App mit mehreren Fenstern gerendert wurde. Weitere Informationen finden Sie im GitHub-Issue #8423.
  • Ein Duplizierungsproblem beim Einfügen an den Anfang von ObservableCollection wurde behoben. Weitere Informationen finden Sie im GitHub-Issue #8370.
Neue APIs für 1.5-experimental2

1.5-experimental2 enthält die folgenden neuen APIs. Diese APIs sind nicht experimentell, sind aber noch nicht in einer stabilen Version des Windows App SDKpp SDK enthalten.

Microsoft.Graphics.DirectX
 
    DirectXPixelFormat
        A4B4G4R4
Microsoft.UI.Xaml
 
    DebugSettings
        LayoutCycleDebugBreakLevel
        LayoutCycleTracingLevel
 
    LayoutCycleDebugBreakLevel
    LayoutCycleTracingLevel
Microsoft.UI.Xaml.Automation.Peers
 
    SelectorBarItemAutomationPeer
Microsoft.UI.Xaml.Controls
 
    MapControl
    MapControlMapServiceErrorOccurredEventArgs
    MapElement
    MapElementClickEventArgs
    MapElementsLayer
    MapIcon
    MapLayer
    SelectorBar
    SelectorBarItem
    SelectorBarSelectionChangedEventArgs
    WebView2
        EnsureCoreWebView2Async
        EnsureCoreWebView2Async
Microsoft.Windows.Management.Deployment
 
    EnsureReadyOptions
    PackageDeploymentManager
        AddPackageSetAsync
        DeprovisionPackageAsync
        DeprovisionPackageByUriAsync
        DeprovisionPackageSetAsync
        EnsurePackageReadyAsync
        EnsurePackageReadyByUriAsync
        EnsurePackageSetReadyAsync
        IsPackageReady
        IsPackageReadyByUri
        IsPackageRegistrationPending
        IsPackageRegistrationPendingForUser
        ProvisionPackageAsync
        ProvisionPackageByUriAsync
        ProvisionPackageSetAsync
        RegisterPackageAsync
        RegisterPackageByUriAsync
        RegisterPackageSetAsync
        RemovePackageByUriAsync
        RepairPackageAsync
        RepairPackageByUriAsync
        RepairPackageSetAsync
        ResetPackageAsync
        ResetPackageByUriAsync
        ResetPackageSetAsync
        StagePackageAsync
        StagePackageByUriAsync
        StagePackageSetAsync
 
    PackageDeploymentProgress
    PackageDeploymentResult
        Error
        ErrorText
 
    PackageSet
        Items
        PackageUri
 
    PackageVolume
        FindPackageVolumeByName
        FindPackageVolumeByPath
        FindPackageVolumes
        IsRepairNeeded
        Repair
 
    ProvisionPackageOptions
    RegisterPackageOptions
        DependencyPackageFamilyNames
 
    RemovePackageOptions
        FailIfNotFound
Zusätzliche 1.5-experimental2-APIs

Diese Version enthält die folgenden neuen und geänderten experimentellen APIs:

Microsoft.UI.Xaml
 
    Application
        DispatcherShutdownMode
 
    DispatcherShutdownMode
    XamlIsland
        SystemBackdrop
Microsoft.UI.Xaml.Hosting
 
    WindowsXamlManager
        IsXamlRunningOnCurrentThread
        XamlShutdownCompletedOnThread
 
    XamlShutdownCompletedOnThreadEventArgs
Microsoft.Windows.System.Workloads
 
    IWorkloadHandler
    Workload
    WorkloadManager
    WorkloadProgress
    WorkloadProgressStatus
    WorkloadResult
    WorkloadsContract
    WorkloadStatus

Version 1.5 Experimental (1.5.0-experimental1)

Dies ist die neueste Version des experimentellen Kanals. Passen Sie Ihre Windows App SDK NuGet-Version auf 1.5.231202003-experimental1 an, um sie herunterzuladen.

Neue APIs für 1.5-experimental1

1.5-experimental1 enthält die folgenden neuen APIs. Diese APIs sind nicht experimentell, aber noch nicht in einer stabilen Version des Windows App SDK enthalten.

Microsoft.Windows.Widgets.Feeds.Providers
    CustomQueryParametersRequestedArgs
    CustomQueryParametersUpdateOptions
    FeedDisabledArgs
    FeedEnabledArgs
    FeedManager
    FeedProviderDisabledArgs
    FeedProviderEnabledArgs
    FeedProviderInfo
    IFeedManager
    IFeedProvider
Zusätzliche 1.5-experimental1-APIs

Diese Version enthält die folgenden neuen und geänderten experimentellen APIs:

Microsoft.UI.Content
 
    ContentIsland
        ConnectionInfo
        ConnectRemoteEndpoint
        IsRemoteEndpointConnected
 
    ContentIslandEnvironment
        CurrentOrientation
        DisplayScale
        NativeOrientation
        ThemeChanged
 
    ContentSiteEnvironment
        CurrentOrientation
        DisplayScale
        NativeOrientation
        NotifyThemeChanged
 
    DesktopChildSiteBridge
        AcceptRemoteEndpoint
        ConnectionInfo
        IsRemoteEndpointConnected
        RemoteEndpointConnecting
        RemoteEndpointDisconnected
        RemoteEndpointRequestedStateChanged
 
    EndpointConnectionEventArgs
    EndpointRequestedStateChangedEventArgs
    IContentIslandEndpointConnectionPrivate
    IContentSiteBridgeEndpointConnectionPrivate
    ProcessStarter
    SystemVisualSiteBridge
        IsClosed
Microsoft.UI.Input
 
    FocusNavigationReason
    FocusNavigationRequest
    FocusNavigationRequestEventArgs
    FocusNavigationResult
    InputFocusController
        DepartFocus
        NavigateFocusRequested
 
    InputFocusNavigationHost
Microsoft.UI.Xaml
 
    DebugSettings
        LayoutCycleDebugBreaks
        LayoutCycleTracing
 
    LayoutCycleDebugBreakLevel
    LayoutCycleTracingLevel
    XamlIsland
Microsoft.UI.Xaml.Controls
 
    SelectionModel
        SelectAllFlat
Microsoft.UI.Xaml.Core.Direct
 
    XamlPropertyIndex
        FlyoutBase_SystemBackdrop
        Popup_SystemBackdrop
Microsoft.Windows.Management.Deployment
 
    AddPackageOptions
    AddPackageSetOptions
    DeploymentPriority
    DeploymentProcessingModel
    EnsureIsReadyOptions
    FindPackageSetOptions
    PackageDeploymentContract
    PackageDeploymentManager
    PackageDeploymentProgress
    PackageDeploymentProgressStatus
    PackageDeploymentResult
    PackageDeploymentStatus
    PackageRuntimeManager
    PackageSet
    PackageSetItem
    PackageSetItemRuntimeDisposition
    PackageSetManager
    PackageSetRuntimeDisposition
    PackageVolume
    PackageVolumeManager
    PackageVolumeStatus
    RegisterPackageOptions
    RemovePackageOptions
    StagePackageOptions
    StubPackageOption