Dernières notes de version de la chaîne de prévisualisation pour le SDK d'application Windows

Important

Le canal d'aperçu n'est pas pris en charge pour une utilisation dans des environnements de production, et les apps qui utilisent les versions d'aperçu ne peuvent pas être publiées sur le Microsoft Store.

La chaîne de prévisualisation comprend des versions du SDK d'application Windows avec des fonctionnalités de la chaîne de prévisualisation à des stades avancés de développement. Les versions d'évaluation n'incluent pas de fonctionnalités et d'API expérimentales, mais peuvent encore faire l'objet de modifications avant la prochaine version stable.

Liens importants :

Prévisualisation de l'archive des notes de mise à jour de la chaîne :

Version 1.6 Preview 2 (1.6.0-preview2)

Il s’agit de la dernière version du canal de préversion pour la version 1.6.

Dans une application Windows App SDK 1.5 (à partir du canal stable), vous pouvez mettre à jour votre package Nuget vers la version 1.6.0-preview2 (voir la section Mettre à jour un package dans Installer et gérer des packages dans Visual Studio à l’aide du Gestionnaire de package NuGet).

Pour le runtime et les MSIX à jour, consultez Téléchargements pour le SDK d’application Windows.

Nouvelles fonctionnalités

Modifications requises du projet C# pour la version 1.6-preview2

Les instructions du projet C# de la version 1.6-preview1 sont également requises pour cette version.

Prise en charge native d’AOA

La version 1.6-preview2 comprend des modifications significatives apportées à la version 2.1.1 de Microsoft.Windows.CsWinRT publiée et améliore la fiabilité de la compilation anticipée native.

Mise à jour de l’intégration du Kit de développement logiciel (SDK) Edge WebView2

Cette version fait désormais référence à la version publiée 1.0.2651.64 du Microsoft.Web.WebView2 package, qui doit résoudre les problèmes rencontrés avec la version préliminaire référencée dans la version 1.6-preview1. Comme indiqué dans la version 1.6-preview1, les applications peuvent désormais choisir une version plus récente du Microsoft.Web.WebView2 package si vous le souhaitez.

Correctifs de bogues

1.6-preview2 contient les nouveaux correctifs suivants depuis la version 1.6-preview1 :

  • Correction d’un incident lors de la définition InfoBar.IsOpen dans .xaml. Pour plus d’informations, consultez le problème GitHub #8391.
  • Correction d’un problème où les éléments HTML perdaient la capture de pointeur lorsque la souris se déplaçait en dehors des WebView2 limites. Pour plus d’informations, consultez le problème GitHub #8677.
  • Correction d’un problème où le glisser-déplacer dans un menu volant avec ShouldConstrainToRootBounds=false lequel ne fonctionnait pas. Pour plus d’informations, consultez le problème GitHub #9276.
  • Correction d’un problème où ms-appx:// les références ne fonctionnaient pas quand elles PublishSingleFile étaient activées. Pour plus d’informations, consultez le problème GitHub #9468.
  • Correction d’un problème où les symboles du débogueur ne fonctionnaient pas correctement pour certains fichiers binaires. Pour plus d’informations, consultez le problème GitHub #4633.
  • Correction d’un saut de build lors de l’utilisation /permissive-. Pour plus d’informations, consultez le problème GitHub #4643.
  • Correction de quelques changements cassants d’API dans la version 1.6-preview1 causée par des paramètres renommés. Pour plus d’informations, consultez le problème GitHub #4645.
  • Correction des ruptures de build de conflit de type atteintes par certains projets dans la version 1.6-preview1, en particulier avec Windows.UI.Text les types. Pour plus d’informations, consultez le problème GitHub #4646.
  • Correction d’un problème lié aux recherches de ressources par les bibliothèques de contrôles dans la version 1.6-preview1. Pour plus d’informations, consultez le problème GitHub #4649.
  • Correction d’un blocage potentiel lors de la NavigationViewsous-classe .
  • Correction d’un problème où les bordures d’une RichEditBox table ne s’effaceraient pas correctement lors du défilement ou de la réduction de la taille de la table.
  • Correction d’un problème où les menus volants avaient MediaTransportControls un arrière-plan entièrement transparent.
  • Correction d’un problème lié à l’échec ou à la suppression d’un webView2 à un emplacement incorrect sur des facteurs d’échelle d’affichage autres que 100 % ou lorsque la mise à l’échelle du texte système est activée.
  • Correction d’un problème où TextBox/RichEditBox l’entrée n’était pas annoncée aux outils d’accessibilité lorsque l’entrée MaxLength était bloquée en raison d’une limite.

Version 1.6 Preview 1 (1.6.0-preview1)

Il s’agit de la dernière version du canal de préversion pour la version 1.6.

Dans une application Windows App SDK 1.5 (à partir du canal stable), vous pouvez mettre à jour votre package Nuget vers la version 1.6.0-preview1 (voir la section Mettre à jour un package dans Installer et gérer des packages dans Visual Studio à l’aide du Gestionnaire de package NuGet).

Pour le runtime et les MSIX à jour, consultez Téléchargements pour le SDK d’application Windows.

Nouvelles fonctionnalités

Remarque

Le nouveau contrôle TitleBar que nous avons publié dans la version 1.6-experimental1 n’est pas encore disponible dans les builds non expérimentales de la version 1.6 pour permettre plus de temps pour évaluer et répondre aux commentaires de la communauté. Nous avons reçu beaucoup d’informations intéressantes ici et nous voulons nous assurer que nous prenons le temps nécessaire pour y remédier.

Modifications requises du projet C# pour la version 1.6-preview1

Dans la version 1.6-preview1, les applications gérées par le SDK d’application Windows nécessitent Microsoft.Windows.SDK.NET.Ref*.*.*.38, qui peut être spécifiée via WindowsSdkPackageVersion dans votre csproj fichier. Par exemple :

<Project Sdk="Microsoft.NET.Sdk">
   <PropertyGroup>
       <OutputType>WinExe</OutputType>
       <TargetFramework>net8.0-windows10.0.22621.0</TargetFramework>
       <TargetPlatformMinVersion>10.0.17763.0</TargetPlatformMinVersion>
       <WindowsSdkPackageVersion>10.0.22621.38</WindowsSdkPackageVersion>
   <PropertyGroup>
   ...

En outre, les applications gérées par le SDK d’application Windows doivent être mises à jour vers Microsoft.Windows.CsWinRT 2.1.1 (ou version ultérieure).

Prise en charge native d’AOA

La propriété de projet .NET PublishAot est désormais prise en charge pour la compilation native Ahead-Of-Time. Pour plus d’informations sur L’AOT natif, consultez Déploiement AOT natif. Étant donné que L’AOT s’appuie sur la prise en charge de Trimming, la plupart des conseils relatifs au découpage décrits précédemment dans la version 1.6-experimental1 s’appliquent également. Pour plus d’informations, consultez la prise en charge DOT native.

Comme indiqué ci-dessus, les projets C# doivent avoir une référence de package à Microsoft.Windows.CsWinRT 2.1.1 (ou version ultérieure). Cette version inclut une implémentation sécurisée par AOT ICustomPropertyProvider . Les types utilisés avec cette prise en charge doivent être marqués avec l’attribut WinRT.GeneratedBindableCustomProperty avec l’opération partial.

Modification de l’intégration du Kit de développement logiciel (SDK) Edge WebView2

Le Kit de développement logiciel (SDK) d’application Windows utilise désormais le Kit de développement logiciel (SDK) Edge WebView2 comme référence NuGet plutôt que d’incorporer une version codée en dur du SDK Edge WebView2. Le nouveau modèle permet aux applications de choisir une version plus récente du Microsoft.Web.WebView2 package au lieu d’être limitée à la version avec laquelle le SDK d’application Windows a été créé. Le nouveau modèle permet également aux applications de référencer des packages NuGet qui font également référence au Kit de développement logiciel (SDK) Edge WebView2. Pour plus d’informations, consultez le problème GitHub #5689.

Nouvelles API de déploiement de package

L’API Gestion des packages a reçu plusieurs améliorations, notamment Is*ReadyOrNewerAvailable*(), EnsureReadyOptions.RegisterNewerIfAvailable, Is*Provisioned*(), IsPackageRegistrationPending() et plusieurs correctifs de bogues. Pour plus d’informations, consultez PackageManagement.md et la demande de tirage #4453 .

Amélioration de la déchirure de tabulation TabView

TabView prend en charge un nouveau CanTearOutTabs mode qui offre une expérience améliorée pour faire glisser des onglets et faire glisser vers une nouvelle fenêtre. Lorsque cette nouvelle option est activée, le glissement de tabulation est très similaire à l’expérience de glissement de tabulation dans Edge et Chrome où une nouvelle fenêtre est créée immédiatement pendant le glisser, ce qui permet à l’utilisateur de le faire glisser vers le bord de l’écran pour agrandir ou aligner la fenêtre dans un mouvement lisse. Cette implémentation n’utilise pas non plus d’API glisser-déplacer. Elle n’est donc pas affectée par les limitations de ces API. Notamment, la déchirure de tabulation est prise en charge dans les processus qui s’exécutent avec élévation de privilèges en tant qu’administrateur.

Autres changements notables

  • Nous avons ajouté une nouvelle ColorHelper.ToDisplayName() API, remplissant cet écart par le service UWP.
  • Ajout d’une nouvelle Microsoft.Windows.Globalization.ApplicationLanguages classe, qui inclut notamment une nouvelle PrimaryLanguageOverride fonctionnalité. Pour plus d’informations, consultez le problème GitHub #4523.
  • Non scellé ItemsWrapGrid. Il doit s’agir d’une modification rétrocompatible.
  • PipsPager prend en charge un nouveau mode dans lequel il peut être encapsulé entre les premiers éléments et les éléments de liste.
  • RatingControl est désormais plus personnalisable, en déplaçant certaines propriétés de style codées en dur vers des ressources de thème. Cela permet aux applications de remplacer ces valeurs pour mieux personnaliser l’apparence de RatingControl.

Problèmes connus

  • Si le débogueur est défini sur toutes les exceptions C++, il s’interrompt sur une paire d’exceptions bruyantes lors du démarrage dans le code BCP47 (Windows Globalization).

Correctifs de bogues

  • Correction de quelques problèmes liés à la gestion des scénarios de barre de titres personnalisés. Pour plus d’informations, consultez les problèmes GitHub #7629, #9670, #9709 et #8431.
  • Correction d’un problème où InfoBadge l’icône n’était pas visible. Pour plus d’informations, consultez le problème GitHub #8176.
  • Correction d’un problème avec les icônes qui s’affichent parfois dans la mauvaise position dans CommandBarFlyout. Pour plus d’informations, veuillez consulter la section GitHub #9409.
  • Correction d’un problème lié au focus clavier dans les menus lors de l’ouverture ou de la fermeture d’un sous-menu. Pour plus d’informations, consultez le problème GitHub #9519.
  • Correction d’un problème lié à TreeView l’utilisation de l’état incorrect IsExpanded lors du recyclage des éléments. Pour plus d’informations, consultez le problème GitHub #9549.
  • Correction d’un problème lors de l’utilisation d’une liaison ElementName dans un ItemsRepeater.ItemTemplate. Pour plus d’informations, consultez le problème GitHub #9715.
  • Correction d’un problème avec le premier élément dans une ItemsRepeater position parfois incorrecte. Pour plus d’informations, consultez le problème GitHub #9743.
  • Correction d’un problème avec InputNonClientPointerSource des entrées parfois cassants sur les boutons min/max/close. Pour plus d’informations, consultez le problème GitHub #9749.
  • Correction d’une erreur de compilation lors de l’utilisation de Microsoft.UI.Interop.h avec clang-cl. Pour plus d’informations, consultez le problème GitHub #9771.
  • Correction d’un problème dans lequel l’événement CharacterReceived ne fonctionnait ComboBox/TextBoxpas. Pour plus d’informations, consultez le problème GitHub #9786.
  • Correction du problème dans les builds expérimentales 1.6 où le comportement d’entrée du pointeur était CanTearOutTabs incorrect sur les moniteurs dont le facteur d’échelle est différent de 100 %. Pour plus d’informations, consultez le problème GitHub #9791.
  • Correction du problème dans la build 1.6-experimental2 où certaines traductions de langue avaient des problèmes d’encodage de caractères pour ColorHelper.ToDisplayName().
  • Correction d’un problème de la version 1.6-experimental1, où NumberBox l’utilisation des couleurs de premier plan et d’arrière-plan correctes n’était pas utilisée. Pour plus d’informations, consultez le problème GitHub #9714.
  • Correction d’un problème lié au fait que les événements dupliqués KeyUp étaient déclenchés pour les touches de direction et d’onglet. Pour plus d’informations, consultez le problème GitHub #9399.
  • Correction d’un problème où l’événement PowerManager.SystemSuspendStatusChanged était inutilisable pour obtenir le SystemSuspendStatus. Pour plus d’informations, consultez le problème GitHub #2833.
  • Correction d’un problème où le focus clavier initial n’était pas correctement donné à un WebView2 moment où il s’agissait du seul contrôle dans la fenêtre.
  • Correction d’un problème lors de l’utilisation ExtendsContentIntoTitleBar=true des boutons Min/Max/Close qui n’apparaissent pas correctement dans UI Automation, ce qui empêchait l’accès vocal d’afficher des numéros pour ces boutons.
  • Correction d’un problème où une application peut se bloquer dans une vérification de verrou en raison d’une réentrance inattendue.
  • Correction d’un problème où Hyperlink les couleurs ne sont pas correctement mises à jour lors du basculement dans un thème à contraste élevé.
  • Correction d’un problème où la modification de la collection d’une ListView fenêtre en arrière-plan peut mal déplacer cette fenêtre au premier plan et prendre le focus.
  • Correction d’un problème de la version 1.6-experimental1 où le paramètre AcrylicBrush.TintLuminosityOpacity dans .xaml dans un projet de bibliothèque de classes se bloque avec une erreur de conversion de type.
  • Correction d’un problème où l’appel ItemsRepeater.StartBringIntoView pouvait parfois entraîner la disparition des éléments.
  • Correction d’un problème où l’interaction tactile et la glisser sur une Button ScrollViewer entrée laissent dans un état appuyé.
  • Mise à jour d’IntelliSense, qui manquait des informations pour de nombreux types et membres plus récents.
  • Correction d’un problème où le fait de cliquer dans une zone vide d’un ScrollViewer déplacerait toujours le focus vers le premier contrôle focusable dans le contrôle et faites défiler ce contrôle dans l’affichage ScrollViewer . Pour plus d’informations, consultez le problème GitHub #597.
  • Correction d’un problème où l’événement Window.Activated a parfois déclenché plusieurs fois. Pour plus d’informations, consultez le problème GitHub #7343.
  • Correction d’un problème où la définition de la NavigationViewItem.IsSelected propriété pour true empêcher ses enfants de s’afficher lorsqu’elle est développée. Pour plus d’informations, consultez le problème GitHub #7930.
  • Correction d’un problème où MediaPlayerElement les légendes n’affichaient pas correctement les légendes avec None ou DropShadow les effets de bord. Pour plus d’informations, consultez le problème GitHub #7981.
  • Correction d’un problème où la Flyout.ShowMode propriété n’était pas utilisée lors de l’affichage du menu volant. Pour plus d’informations, consultez le problème GitHub #7987.
  • Correction d’un problème où NumberBox il y aurait parfois des erreurs d’arrondi. Pour plus d’informations, consultez le problème GitHub #8780.
  • Correction d’un problème où l’utilisation d’une bibliothèque compilée sur une version antérieure de WinAppSDK pouvait entraîner une erreur lors de la recherche d’un type ou d’une propriété. Pour plus d’informations, consultez le problème GitHub #8810.
  • Correction d’un problème où le focus clavier initial n’était pas défini lors du lancement d’une fenêtre. Pour plus d’informations, consultez le problème GitHub #8816.
  • Correction d’un problème qui FlyoutShowMode.TransientWithDismissOnPointerMoveAway ne fonctionnait pas après la première fois qu’il était affiché. Pour plus d’informations, consultez le problème GitHub #8896.
  • Correction d’un problème où certains contrôles n’ont pas correctement lié et Background propriétés de modèleForeground. Pour plus d’informations, consultez le problème GitHub #7070, #9020, #9029, #9083 et #9102.
  • Correction d’un problème où ThemeResources’était utilisé dans VisualStateManager les setters ne se mettait pas à jour lors de la modification du thème. Ces contrôles fréquemment affectés dans les menu volants. Pour plus d’informations, consultez le problème GitHub #9198.
  • Correction d’un problème où WebView le focus de clé serait perdu, ce qui entraînait des événements flous/focus supplémentaires et d’autres problèmes. Pour plus d’informations, consultez le problème GitHub #9288.
  • Correction d’un problème où NavigationView pouvait afficher une erreur de liaison dans la sortie de débogage. Pour plus d’informations, consultez le problème GitHub #9384.
  • Correction d’un problème où les fichiers SVG définissant une zone de vue négative ne sont plus rendus. Pour plus d’informations, consultez le problème GitHub #9415.
  • Correction d’un problème où la modification ItemsView.Layout de l’orientation entraînait la suppression d’un élément. Pour plus d’informations, consultez le problème GitHub #9422.
  • Correction d’un problème où le défilement d’une ScrollView sortie de débogage a généré un grand nombre de sorties de débogage. Pour plus d’informations, consultez le problème GitHub #9434.
  • Correction d’un problème où MapContorl.InteractiveControlsVisible ne fonctionnait pas correctement. Pour plus d’informations, consultez le problème GitHub #9486.
  • Correction d’un problème où MapControl.MapElementClick l’événement n’a pas été correctement déclenché. Pour plus d’informations, consultez le problème GitHub #9487.
  • Correction d’un problème où x :Bind n’a pas vérifié la valeur Null avant d’utiliser une référence faible, ce qui pouvait entraîner un blocage. Pour plus d’informations, consultez le problème GitHub #9551.
  • Correction d’un problème où la modification de la TeachingTip.Target propriété n’a pas correctement mis à jour sa position. Pour plus d’informations, consultez le problème GitHub #9553.
  • Correction d’un problème où les listes déroulantes ne répondaient pas dans WebView2. Pour plus d’informations, consultez le problème GitHub #9566.
  • Correction d’une fuite de mémoire lors de l’utilisation GeometryGroup. Pour plus d’informations, consultez le problème GitHub #9578.
  • Correction d’un problème où le défilement à travers un très grand nombre d’éléments d’un ItemRepeater dans un ScrollView peut provoquer des images de rendu vides. Pour plus d’informations, consultez le problème GitHub #9643.
  • Correction d’un problème qui SceneVisual ne fonctionnait pas.

Nouvelles API dans la version 1.6.0-preview1

La version 1.6-preview1 inclut les nouvelles API suivantes par rapport à la version stable 1.5 :

Microsoft.UI

    ColorHelper
        ToDisplayName
Microsoft.UI.Input

    EnteredMoveSizeEventArgs
    EnteringMoveSizeEventArgs
    ExitedMoveSizeEventArgs
    InputNonClientPointerSource
        EnteredMoveSize
        EnteringMoveSize
        ExitedMoveSize
        WindowRectChanged
        WindowRectChanging

    MoveSizeOperation
    WindowRectChangedEventArgs
    WindowRectChangingEventArgs
Microsoft.UI.Xaml

    XamlRoot
        CoordinateConverter
Microsoft.UI.Xaml.Automation.Peers

    ScrollPresenterAutomationPeer
Microsoft.UI.Xaml.Controls

    PipsPager
        WrapMode
        WrapModeProperty

    PipsPagerWrapMode
    TabView
        CanTearOutTabs
        CanTearOutTabsProperty
        ExternalTornOutTabsDropped
        ExternalTornOutTabsDropping
        TabTearOutRequested
        TabTearOutWindowRequested

    TabViewExternalTornOutTabsDroppedEventArgs
    TabViewExternalTornOutTabsDroppingEventArgs
    TabViewTabTearOutRequestedEventArgs
    TabViewTabTearOutWindowRequestedEventArgs
Microsoft.Windows.Globalization

    ApplicationLanguages
Microsoft.Windows.Management.Deployment

    EnsureReadyOptions
        RegisterNewerIfAvailable

    PackageDeploymentFeature
    PackageDeploymentManager
        IsPackageDeploymentFeatureSupported
        IsPackageProvisioned
        IsPackageProvisionedByUri
        IsPackageReadyOrNewerAvailable
        IsPackageReadyOrNewerAvailableByUri
        IsPackageSetProvisioned
        IsPackageSetReadyOrNewerAvailable

    PackageReadyOrNewerAvailableStatus
Microsoft.Windows.Storage

    ApplicationData
    ApplicationDataContainer
    ApplicationDataContract
    ApplicationDataCreateDisposition
    ApplicationDataLocality