Заметки о выпуске канала предварительной версии для пакета SDK для приложений Windows 1.4
Внимание
Канал предварительной версии не поддерживается для использования в рабочих средах, а приложения, использующие предварительные версии, не могут быть опубликованы в Microsoft Store.
Канал предварительной версии включает выпуски пакета SDK для приложений Windows с функциями предварительной версии канала на поздних этапах разработки. Предварительные версии не включают экспериментальные функции и API, но могут по-прежнему подвергаться критическим изменениям до следующего стабильного выпуска.
Важные ссылки:
- Если вы хотите обновить существующее приложение с более старой версии пакета SDK для приложений Windows до более новой версии, ознакомьтесь с обновлением существующих проектов до последнего выпуска пакета SDK для приложений Windows.
- Документация по предварительным выпускам см. в разделе "Установка средств для предварительной версии" и "Экспериментальные каналы" пакета SDK для приложений Windows.
Последний выпуск канала предварительной версии:
Последний выпуск стабильного канала:
Версия 1.4(предварительная версия 2) (1.4.0-preview2)
Это последний выпуск канала предварительной версии для версии 1.4.
В существующем приложении пакета SDK для приложений Windows 1.3 (из стабильного канала) можно обновить пакет Nuget до версии 1.4.0-preview2 (см. раздел "Обновление пакета" в Visual Studio и управление ими с помощью диспетчер пакетов NuGet).
Сведения об обновленной среде выполнения и MSIX см. в разделе "Последние загрузки пакета SDK для приложений Windows".
Xaml Islands больше не экспериментальные
Xaml Islands и базовая платформа ContentIslands больше не экспериментальны.
- В настоящее время XAML Islands тестируются только для использования в приложениях C++. В этом выпуске нет удобных элементов оболочки для использования в WPF или WinForms.
DesktopWindowXamlSource
и связанные типы добавлены в пространство имен Microsoft.UI.Xaml.Hosting для XAML Islands.XamlRoot.ContentIslandEnvironment
добавлено, чтобы получить доступ к базовым сведениям о острове для элемента.- Многие новые типы появились в пространстве имен Microsoft.UI.Content и пространстве имен Microsoft.UI.Input в качестве базовой поддержки XAML Islands или для использования этой функции ContentIslands без XAML.
- Добавлен новый
DragDropManager
(плюс связанные типы) в пространстве имен Microsoft.UI.Input.DragDrop для сценариев Island.
Обновления ItemsView
Новый ItemsView
класс, представленный в версии 1.4-preview1, был существенно обновлен с новыми свойствами и новым вспомогательным классом.
- Новый
ItemsView
элемент управления отображает коллекцию данных.ItemsView
аналогиченListView
элементам управления иGridView
элементам управления, но создается с помощьюItemsRepeater
ScrollView
ItemContainer
компонентов иItemCollectionTransitionProvider
компонентов. Он предлагает уникальную возможность подключать пользовательскиеLayout
илиItemCollectionTransitionProvider
реализации. Еще одним ключевым преимуществом является возможность переключения макета во время сохранения выделения элементов. ВнутреннийScrollView
элемент управления также предлагает функции, недоступные вScrollViewer
ListView
/GridView
элементе управления, например возможность управления анимацией во время программных прокрутк.- Новое свойство
ItemsRepeater
(и новыйItemTransitionProvider
ItemsView
элемент управления) позволяет указатьItemCollectionTransitionProvider
объект для управления анимациями перехода в этом элементе управления. ТакжеCreateDefaultItemTransitionProvider
был добавленLayout
метод, который позволяет объекту макета обеспечить резервный переход для его сопровождения, если он не указан явным образом в элементеItemsView
управления. - Новое
IndexBasedLayoutOrientation
свойство, вLayout
котором ориентация макета, если она есть, основана на их индексе в исходной коллекции. Значение по умолчанию —IndexBasedLayoutOrientation.None
. Пользовательские макеты задают это свойство путем вызова нового (защищенного)SetIndexBasedLayoutOrientation
метода. - Новое
VisibleRect
свойствоVirtualizingLayoutContext
, которое получает видимый прямоугольник окна представления в связанномFrameworkElement
с ним объектеLayout
. Защищенный виртуальныйVirtualizingLayoutContext.VisibleRectCore
метод можно переопределить, чтобы указать значение, которое будет возвращено изVisibleRect
свойства.
- Новое свойство
- Новый
LinedFlowLayout
класс обычно используется для размещения элементов элемента управления коллекциейItemsView
. Это особенно полезно для отображения коллекции рисунков. Это делает это, выкладывая их слева направо, и сверху вниз, в линиях равной высоты. Рисунки заполняют горизонтальную линию, а затем помещать в следующую строку. Изображения могут быть обрезаны в левой и правой краях, чтобы поместиться в линию. Они также могут быть развернуты горизонтально и обрезаны на верхних и нижних краях, чтобы заполнить линию при использовании режима растяжения.
Новые функции и обновления из WinAppSDK
Popup/FlyoutBase.IsConstrainedToRootBounds = false
теперь поддерживается, позволяя всплывающему элементу или всплывающему элементу расширяться за пределами родительского окна. СвойствоSystemBackdrop
было добавлено к этим типам для поддержки акрила в этих неограниченных всплывающих окнах. Меню по умолчанию используются для использования акрила.Closed
,FrameworkClosed
и были добавленыDesktopAcrylicController
вIsClosed
иMicaController
для улучшения обработки во время завершения работы объекта или потока.DesktopAcrylicController.Kind
теперь можно выбрать один из стандартных акриловых внешних эффектов.DispatcherQueue
имеет некоторые новые события и вспомогательные средства, чтобы упростить более упорядоченное завершение работы и для приложений с помощью Островов, чтобы легко запустить стандартный поддерживаемый цикл событий.InputNonClientPointerSource
В пространстве имен Microsoft.UI.Input можно использовать для сценариев пользовательской панели заголовков для определения не клиентских областей. Код может зарегистрировать соответствующие события, например навести указатель мыши и щелкнуть события в этих регионах.AppWindow
имеет некоторые новые вспомогательные средства, чтобы получить и связать сDispatcherQueue
ним.- Новое
TreeView.SelectionChanged
событие позволяет разработчикам реагировать, когда пользователь или код изменяет набор выбранных узлов в элементеTreeView
управления. - Новый
ScrollView
элемент управления предоставляет новую альтернативуScrollViewer
. Этот новый элемент управления очень выровнен в поведении и API с существующимScrollViewer
элементом управления, но основан наInteractionTracker
новых функциях, таких как изменения представления на основе анимации, а также предназначен для обеспечения полной функциональностиItemsRepeater
. См. более гибкий ScrollViewer · Проблема #108 · Дополнительные сведения см. в microsoft/microsoft-ui-xaml (github.com). Различные новые типы, в том числеScrollPresenter
являются частью общейScrollView
модели. - Новый
AnnotatedScrollBar
элемент управления расширяет функциональность обычной полосы прокрутки, предоставляя простой способ навигации по большой коллекции элементов. Это достигается с помощью щелкаемой железной дороги с метками, которые действуют как маркеры. Кроме того, он позволяет более детально понять прокручиваемое содержимое, отображая подсказку при наведении указателя мыши на щелкаемый рельс.
Новые API в версии 1.4.0-preview2
Версия 1.4-preview2 включает следующие новые API по сравнению с предыдущим выпуском 1.4-preview1:
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
Версия 1.4(предварительная версия 1) (1.4.0-preview1)
Это последний выпуск канала предварительной версии для версии 1.4.
В существующем приложении пакета SDK для приложений Windows 1.3 (из стабильного канала) можно обновить пакет Nuget до версии 1.4.0-preview1 (см. раздел "Обновление пакета" в Visual Studio и управление ими с помощью диспетчер пакетов NuGet).
Сведения об обновленной среде выполнения и MSIX см. в разделе "Последние загрузки пакета SDK для приложений Windows".
Обновления мини-приложений
Добавлены три новых интерфейса для поставщиков мини-приложений для реализации: IWidgetProvider2
, IWidgetProviderAnalytics
и IWidgetProviderErrors
. IWidgetProvider2
позволяет поставщикам реагировать на действие "Настройка ", вызываемое пользователем, которое идентично тому, что доступно для сторонних мини-приложений. IWidgetProviderErrors
Интерфейсы IWidgetProviderAnalytics
используются поставщиками для сбора данных телеметрии для своих мини-приложений. Аналитика и события сбоя о мини-приложениях передаются соответствующим поставщикам мини-приложений. WidgetAnalyticsInfoReportedArgs
Классы WidgetCustomizationRequestedArgs
и WidgetErrorInfoReportedArgs
классы используются для обмена соответствующими сведениями для поддержки новых функциональных возможностей.
Новые возможности из WinAppSDK
- Новый
ThemeSettings
класс, позволяющий приложениям Win32 WinRT обнаруживать изменение параметра высокой контрастности системы, аналогично классу Специальные возможности UWP. Дополнительные сведения см. в спецификации API ThemeSettings на сайте GitHub. Popup/FlyoutBase.ShouldConstrainToRootBounds
теперь поддерживается, чтобы разрешить подсказки, меню и другие всплывающие окна, чтобы расширить границы главного окна. Предварительная версия 1 еще не полностью поддерживает акриловые или другие SystemBackdrops во всплывающем или всплывающем элементе; дополнительные API и реализация для этого будут включены в следующий выпуск версии 1.4.AccessKeyManager.EnterDisplayMode
— это новый метод для отображения ключей доступа для текущего ориентированного элемента предоставленного корня. Ключи доступа находятся в режиме отображения при отображении подсказки ключа для вызова команды, например нажатия клавиши ALT в Paint, чтобы показать, какие ключи соответствуют элементам управления. Этот метод позволяет программным способом вводить режим отображения.Application.ResourceManagerRequested
предоставляет механизм дляIResourceManager
разрешения URI ресурсов для сценариев, когда значение по умолчаниюResourceManager
не будет работать. Дополнительные сведения см. в спецификации API Application.ResourceManagerRequested на GitHub.- Мы представляем новый элемент управления списком под названием
ItemsView
и соответствующий конкретныйItemContainer
класс.ItemContainer
— это упрощенный контейнер со встроенными состояниями выбора и визуальными элементами, которые могут легко упаковывать требуемое содержимое и использоваться дляItemsView
сценария управления коллекцией.ItemsView
по-прежнему отмечен экспериментальный в предварительной версии 1, но будет включен в следующий выпуск версии 1.4. - Версия пакета SDK WebView2 была обновлена с версии 1661.34 до 1823.32.
Новые API в версии 1.4.0-preview1
Версия 1.4-preview1 включает следующие новые API по сравнению с стабильным выпуском 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
См. также
- Последние заметки о выпуске стабильного канала для пакета SDK для приложений Windows
- Последние заметки о выпуске экспериментального канала для пакета SDK для приложений Windows
- Установка инструментов для Windows App SDK
- Создание первого проекта WinUI 3 (пакет SDK для приложений Windows)
- Использование пакета Windows App SDK в существующем проекте
- Общие сведения о развертывании
Windows developer