Notes de publication du canal d'aperçu pour le SDK d'application Windows 1.4
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 :
- Si vous souhaitez mettre à niveau une application existante d’une version antérieure du SDK d’application Windows vers une version plus récente, consultez Mettre à jour des projets existants vers la dernière version du SDK d’application Windows.
- Pour obtenir de la documentation sur l’utilisation de la préversion, consultez Installer des outils pour un aperçu et les canaux expérimentaux du SDK d'application Windows.
Dernière version de la chaîne de prévisualisation :
Dernière version de la chaîne stable :
Version 1.4 Aperçu 2 (1.4.0-preview2)
Il s’agit de la dernière version de l’aperçu du canal pour la version 1.4.
Dans une application existante utilisant SDK d'application Windows 1.3 (à partir du canal stable), vous pouvez mettre à jour votre package Nuget vers 1.4.0-preview2 (consultez la section Mettre à jour un package dans Installer et gérer des packages dans Visual Studio à l'aide du gestionnaire de packages NuGet).
Pour obtenir le runtime et le MSIX mis à jour, consultez les derniers téléchargements du SDK d'application Windows.
XAML Islands n’est plus expérimental
XAML Islands et la plateforme ContentIslands sous-jacente ne sont plus expérimentaux.
- Actuellement, XAML Islands est testé uniquement pour les applications C++. Cette version n’a aucun élément de wrapper pratique pouvant être utilisé dans WPF ou WinForms.
DesktopWindowXamlSource
et les types associés ont été ajoutés dans l’espace de noms Microsoft.UI.Xaml.Hosting pour XAML Islands.XamlRoot.ContentIslandEnvironment
a été ajouté pour vous aider à accéder aux informations Island sous-jacentes d’un élément.- De nombreux nouveaux types ont été introduits dans l’espace de noms Microsoft.UI.Content et l’espace de noms Microsoft.UI.Input pour la prise en charge sous-jacente de XAML Islands ou pour utiliser cette fonctionnalité ContentIslands sans XAML.
- Un nouveau
DragDropManager
(plus les types associés) a été ajouté dans l’espace de noms Microsoft.UI.Input.DragDrop pour les scénarios Island.
Mises à jour ItemsView
La nouvelle ItemsView
classe introduite dans la version 1.4-preview1 a été considérablement mise à jour avec de nouvelles propriétés et une nouvelle classe de prise en charge.
- Le nouveau contrôle
ItemsView
affiche une collection de données.ItemsView
est similaire aux contrôlesListView
etGridView
, mais est généré à partir des composantsItemsRepeater
,ScrollView
,ItemContainer
etItemCollectionTransitionProvider
. Il offre la possibilité unique de se connecter à des implémentations deLayout
ouItemCollectionTransitionProvider
personnalisées. Un autre avantage clé est la possibilité de changer la disposition à la volée tout en préservant la sélection des éléments. Le contrôle interneScrollView
offre également des fonctionnalités non disponibles dans le contrôleScrollViewer
deListView
/GridView
, comme la possibilité de contrôler l’animation pendant les défilements programmatiques.- Une nouvelle propriété
ItemTransitionProvider
surItemsRepeater
(et le nouveau contrôleItemsView
) vous permet de spécifier un objetItemCollectionTransitionProvider
pour contrôler les animations de transition sur ce contrôle. Une méthodeCreateDefaultItemTransitionProvider
a également été ajoutée àLayout
, ce qui permet à un objet de disposition de fournir une transition de secours pour l’accompagner si vous n’en fournissez pas explicitement sur le contrôleItemsView
. - Nouvelle propriété
IndexBasedLayoutOrientation
surLayout
où l’orientation de la disposition, le cas échéant, des éléments est basée sur leur index dans la collection source. La valeur par défaut estIndexBasedLayoutOrientation.None
. Les dispositions personnalisées définissent cette propriété en appelant la nouvelle méthode (protégée)SetIndexBasedLayoutOrientation
. - Une nouvelle propriété
VisibleRect
surVirtualizingLayoutContext
obtient le rectangle visible de la fenêtre d’affichage dans leFrameworkElement
associé àLayout
. La méthode virtuelleVirtualizingLayoutContext.VisibleRectCore
protégée peut être remplacée pour fournir la valeur que la propriétéVisibleRect
doit renvoyer.
- Une nouvelle propriété
- La nouvelle classe
LinedFlowLayout
est généralement utilisée pour mettre en place les éléments du contrôle de collectionItemsView
. Elle est particulièrement utile pour afficher une collection d’images. Elle le fait en les disposant de gauche à droite et de haut en bas, en lignes de hauteur égale. Les images remplissent une ligne horizontale, puis passent à la ligne suivante. Les images peuvent être rognées à gauche et à droite pour s’adapter à une ligne. Elles peuvent également être développées horizontalement, et rognées en haut et en bas pour remplir une ligne quand le mode d’étirement est utilisé.
Nouvelles fonctionnalités de WinAppSDK
Popup/FlyoutBase.IsConstrainedToRootBounds = false
est désormais pris en charge, ce qui permet à une fenêtre contextuelle/un contrôle suspendu de s’étendre en dehors des limites de la fenêtre parente. Une propriétéSystemBackdrop
a été ajoutée à ces types pour prendre en charge l’acrylique dans ces fenêtres contextuelles non contraintes. Les menus par défaut utilisent cette option pour avoir l’acrylique.Closed
,FrameworkClosed
etIsClosed
ont été ajoutés àDesktopAcrylicController
etMicaController
pour améliorer la gestion pendant l’arrêt de l’objet/du thread.DesktopAcrylicController.Kind
peut maintenant être défini pour choisir des apparences acryliques standard.DispatcherQueue
a de nouveaux événements et applications auxiliaires pour permettre une meilleure organisation de l’arrêt et pour que les applications utilisant Islands puissent exécuter facilement une boucle d’événements prise en charge standard.InputNonClientPointerSource
dans l’espace de noms Microsoft.UI.Input peut être utilisé dans les scénarios de barre de titre personnalisé pour définir des régions de zone non cliente. Le code peut s’inscrire à des événements correspondants, comme les événements de pointage et de clic sur ces régions.AppWindow
a des nouvelles applications auxiliaires qu’il peut obtenir et associer à unDispatcherQueue
.- Le nouvel événement
TreeView.SelectionChanged
permet aux développeurs de répondre quand l’utilisateur ou le code-behind change l’ensemble des nœuds sélectionnés dans le contrôleTreeView
. - Le nouveau contrôle
ScrollView
offre une nouvelle alternative àScrollViewer
. Ce nouveau contrôle est hautement aligné en matière de comportement et d’API sur le contrôle existantScrollViewer
, mais est basé surInteractionTracker
, a de nouvelles fonctionnalités comme les changements de vue pilotés par l’animation, et est également conçu pour garantir une fonctionnalité complète deItemsRepeater
. Consultez Un ScrollViewer plus flexible · Problème n° 108 · microsoft/microsoft-ui-xaml (github.com) pour plus d’informations. Différents nouveaux types, y comprisScrollPresenter
, font partie du modèleScrollView
général. - Le nouveau contrôle
AnnotatedScrollBar
étend les fonctionnalités d’une barre de défilement classique en fournissant un moyen simple de parcourir une grande collection d’éléments. Le résultat est obtenu en utilisant une barre cliquable avec des étiquettes qui servent de marqueurs. Il permet également une compréhension plus granulaire du contenu de défilement en affichant une info-bulle quand vous pointez sur la barre cliquable.
Nouvelles API dans la version 1.4.0-preview2
La version 1.4-preview2 inclut les nouvelles API suivantes par rapport à la version 1.4-preview1 précédente :
Microsoft.UI
ClosableNotifierHandler
IClosableNotifier
Microsoft.UI.Composition.SystemBackdrops
DesktopAcrylicController
Closed
FrameworkClosed
IsClosed
Kind
DesktopAcrylicKind
MicaController
Closed
FrameworkClosed
IsClosed
Microsoft.UI.Content
ContentCoordinateConverter
ContentCoordinateRoundingMode
ContentDeferral
ContentEnvironmentSettingChangedEventArgs
ContentEnvironmentStateChangedEventArgs
ContentIsland
ContentIslandAutomationProviderRequestedEventArgs
ContentIslandEnvironment
ContentIslandStateChangedEventArgs
ContentLayoutDirection
ContentSite
ContentSiteEnvironment
ContentSiteEnvironmentView
ContentSiteRequestedStateChangedEventArgs
ContentSiteView
ContentSizePolicy
DesktopChildSiteBridge
DesktopSiteBridge
IContentSiteBridge
Microsoft.UI.Dispatching
DispatcherExitDeferral
DispatcherQueue
EnqueueEventLoopExit
EnsureSystemDispatcherQueue
FrameworkShutdownCompleted
FrameworkShutdownStarting
RunEventLoop
RunEventLoop
DispatcherQueueController
ShutdownQueue
DispatcherRunOptions
Microsoft.UI.Input
CharacterReceivedEventArgs
ContextMenuKeyEventArgs
FocusChangedEventArgs
InputActivationListener
GetForIsland
InputFocusChangedEventArgs
InputFocusController
InputKeyboardSource
CharacterReceived
ContextMenuKey
GetCurrentKeyState
GetForIsland
GetKeyState
KeyDown
KeyUp
SystemKeyDown
SystemKeyUp
InputNonClientPointerSource
InputPointerSource
GetForIsland
InputPreTranslateKeyboardSource
KeyEventArgs
NonClientCaptionTappedEventArgs
NonClientPointerEventArgs
NonClientRegionKind
NonClientRegionsChangedEventArgs
PhysicalKeyStatus
VirtualKeyStates
Microsoft.UI.Input.DragDrop
DragDropManager
DragDropModifiers
DragInfo
DragOperation
DragUIContentMode
DragUIOverride
DropOperationTargetRequestedEventArgs
IDropOperationTarget
Microsoft.UI.Windowing
AppWindow
AssociateWithDispatcherQueue
Create
DispatcherQueue
Microsoft.UI.Xaml
XamlRoot
ContentIslandEnvironment
Microsoft.UI.Xaml.Automation.Peers
ItemsViewAutomationPeer
Microsoft.UI.Xaml.Controls
AnnotatedScrollBar
AnnotatedScrollBarDetailLabelRequestedEventArgs
AnnotatedScrollBarLabel
AnnotatedScrollBarScrollingEventArgs
AnnotatedScrollBarScrollingEventKind
IndexBasedLayoutOrientation
ItemCollectionTransition
ItemCollectionTransitionCompletedEventArgs
ItemCollectionTransitionOperation
ItemCollectionTransitionProgress
ItemCollectionTransitionProvider
ItemCollectionTransitionTriggers
ItemsRepeater
ItemTransitionProvider
ItemTransitionProviderProperty
ItemsView
ItemsViewItemInvokedEventArgs
ItemsViewSelectionChangedEventArgs
ItemsViewSelectionMode
Layout
CreateDefaultItemTransitionProvider
IndexBasedLayoutOrientation
SetIndexBasedLayoutOrientation
LinedFlowLayout
LinedFlowLayoutItemCollectionTransitionProvider
LinedFlowLayoutItemsInfoRequestedEventArgs
LinedFlowLayoutItemsJustification
LinedFlowLayoutItemsStretch
ScrollingAnchorRequestedEventArgs
ScrollingAnimationMode
ScrollingBringingIntoViewEventArgs
ScrollingChainMode
ScrollingContentOrientation
ScrollingInputKinds
ScrollingInteractionState
ScrollingRailMode
ScrollingScrollAnimationStartingEventArgs
ScrollingScrollBarVisibility
ScrollingScrollCompletedEventArgs
ScrollingScrollMode
ScrollingScrollOptions
ScrollingSnapPointsMode
ScrollingZoomAnimationStartingEventArgs
ScrollingZoomCompletedEventArgs
ScrollingZoomMode
ScrollingZoomOptions
ScrollView
TreeView
SelectionChanged
TreeViewSelectionChangedEventArgs
VirtualizingLayoutContext
VisibleRect
VisibleRectCore
Microsoft.UI.Xaml.Controls.Primitives
FlyoutBase
SystemBackdrop
SystemBackdropProperty
IScrollController
IScrollControllerPanningInfo
Popup
SystemBackdrop
SystemBackdropProperty
RepeatedScrollSnapPoint
RepeatedZoomSnapPoint
ScrollControllerAddScrollVelocityRequestedEventArgs
ScrollControllerPanRequestedEventArgs
ScrollControllerScrollByRequestedEventArgs
ScrollControllerScrollToRequestedEventArgs
ScrollPresenter
ScrollSnapPoint
ScrollSnapPointBase
ScrollSnapPointsAlignment
SnapPointBase
ZoomSnapPoint
ZoomSnapPointBase
Microsoft.UI.Xaml.Hosting
DesktopWindowXamlSource
DesktopWindowXamlSourceGotFocusEventArgs
DesktopWindowXamlSourceTakeFocusRequestedEventArgs
WindowsXamlManager
XamlSourceFocusNavigationReason
XamlSourceFocusNavigationRequest
XamlSourceFocusNavigationResult
Version 1.4 Aperçu 1 (1.4.0-preview1)
Il s’agit de la dernière version de l’aperçu du canal pour la version 1.4.
Dans une application existante utilisant SDK d'application Windows 1.3 (à partir du canal stable), vous pouvez mettre à jour votre package Nuget vers 1.4.0-preview1 (consultez la section Mettre à jour un package dans Installer et gérer des packages dans Visual Studio à l'aide du gestionnaire de packages NuGet).
Pour obtenir le runtime et le MSIX mis à jour, consultez les derniers téléchargements du SDK d'application Windows.
Mises à jour des widgets
Trois nouvelles interfaces ont été ajoutées pour les fournisseurs de widgets : IWidgetProvider2
, IWidgetProviderAnalytics
et IWidgetProviderErrors
. IWidgetProvider2
permet aux fournisseurs de répondre à l’action Personnaliser appelée par l’utilisateur, comme pour les widgets internes. Les interfaces IWidgetProviderAnalytics
et IWidgetProviderErrors
sont utilisées par les fournisseurs afin de collecter des données de télémétrie pour leurs widgets ; les événements d’analyse et d’échec sur les widgets sont communiqués aux fournisseurs de widgets respectifs. Les classes WidgetCustomizationRequestedArgs
, WidgetAnalyticsInfoReportedArgs
et WidgetErrorInfoReportedArgs
sont utilisées afin de communiquer des informations pertinentes pour prendre en charge les nouvelles fonctionnalités.
Nouvelles fonctionnalités de WinAppSDK
- Nouvelle classe
ThemeSettings
qui permet aux applications WinRT Win32 de détecter quand le paramètre Contraste élevé du système a changé, comme la classe AccessibilitySettingsUWP. Consultez la Spécification de l’API ThemeSettings sur GitHub pour plus d’informations. Popup/FlyoutBase.ShouldConstrainToRootBounds
est désormais pris en charge pour autoriser les info-bulles, les menus et d’autres fenêtres contextuelles à étendre en dehors des limites de la fenêtre principale. La préversion 1 ne prend pas encore entièrement en charge l’acrylique ou d’autres SystemBackdrops sur une fenêtre contextuelle/menu volant ; Des API et une implémentation supplémentaires seront incluses dans la prochaine version 1.4.AccessKeyManager.EnterDisplayMode
est une nouvelle méthode qui affiche les clés d’accès pour l’élément actuel d’une racine fournie ayant le focus. Les touches d’accès sont en « mode d’affichage » quand elles affichent un conseil de touche pour appeler une commande, par exemple, quand vous appuyez sur la touche Alt dans Paint pour afficher les touches qui correspondent aux contrôles. Cette méthode permet d’entrer le mode d’affichage programmatiquement.Application.ResourceManagerRequested
fournit un mécanisme pour avoir un autreIResourceManager
qui résout les URI de ressource dans les scénarios où leResourceManager
par défaut ne fonctionne pas. Pour plus d’informations, consultez la Spécification de l’API Application.ResourceManagerRequested sur GitHub.- Nous introduisons un nouveau contrôle de liste appelé
ItemsView
et la classe concrèteItemContainer
correspondante.ItemContainer
est un conteneur léger avec des états de sélection et des visuels intégrés, qui peut facilement encapsuler le contenu souhaité et être utilisé avecItemsView
dans un scénario de contrôle de collection.ItemsView
est toujours marqué expérimental dans l’aperçu 1, mais sera inclus dans la prochaine version 1.4. - Le SDK WebView2 a été mis à jour de la version 1661.34 à la version 1823.32.
Nouvelles API dans la version 1.4.0-preview1
La version 1.4-preview1 inclut les nouvelles API suivantes par rapport à la version stable 1.3 :
Microsoft.UI.System
ThemeSettings
Microsoft.UI.Xaml
Application
ResourceManagerRequested
ResourceManagerRequestedEventArgs
Microsoft.UI.Xaml.Automation.Peers
ItemContainerAutomationPeer
Microsoft.UI.Xaml.Controls
ItemContainer
Microsoft.UI.Xaml.Controls.Primitives
CommandBarFlyoutCommandBar
SystemBackdrop
SystemBackdropProperty
Microsoft.UI.Xaml.Input
AccessKeyManager
EnterDisplayMode
Microsoft.Web.WebView2.Core
CoreWebView2
LaunchingExternalUriScheme
MemoryUsageTargetLevel
CoreWebView2File
CoreWebView2LaunchingExternalUriSchemeEventArgs
CoreWebView2MemoryUsageTargetLevel
CoreWebView2PermissionKind
WindowManagement
CoreWebView2Profile
CookieManager
IsGeneralAutofillEnabled
IsPasswordAutosaveEnabled
CoreWebView2Settings
IsReputationCheckingRequired
CoreWebView2WebMessageReceivedEventArgs
AdditionalObjects
Microsoft.Windows.Widgets.Providers
IWidgetProvider2
IWidgetProviderAnalytics
IWidgetProviderErrors
WidgetAnalyticsInfoReportedArgs
WidgetCustomizationRequestedArgs
WidgetErrorInfoReportedArgs
Rubriques connexes
- Notes de version de la dernière chaîne stable pour le SDK d'application Windows
- Dernières notes de version de la chaîne expérimentale pour le SDK d'application Windows
- Installer des outils pour le SDK d’application Windows
- Créer votre premier projet WinUI 3 (SDK d’application Windows)
- Utiliser le SDK d’application Windows dans un projet existant
- Vue d’ensemble du déploiement
Windows developer