Последние заметки о выпуске канала предварительной версии для пакета SDK для приложений Windows
Внимание
Канал предварительной версии не поддерживается для использования в рабочих средах, а приложения, использующие предварительные версии, не могут быть опубликованы в Microsoft Store.
Канал предварительной версии включает выпуски пакета SDK для приложений Windows с функциями предварительной версии канала на поздних этапах разработки. Предварительные версии не включают экспериментальные функции и API, но могут по-прежнему подвергаться критическим изменениям до следующего стабильного выпуска.
Важные ссылки:
- Если вы хотите обновить существующее приложение с более старой версии пакета SDK для приложений Windows до более новой версии, ознакомьтесь с обновлением существующих проектов до последнего выпуска пакета SDK для приложений Windows.
- Документация по предварительным выпускам см. в разделе "Установка средств для предварительной версии" и "Экспериментальные каналы" пакета SDK для приложений Windows.
Архив заметки о выпуске канала предварительной версии:
- Заметки о выпуске канала предварительной версии для пакета SDK для приложений Windows 1.5
- Заметки о выпуске канала предварительной версии для пакета SDK для приложений Windows 1.4
- Заметки о выпуске канала предварительной версии для пакета SDK для приложений Windows 1.3
- Заметки о выпуске канала предварительной версии для пакета SDK для приложений Windows 1.2
- Заметки о выпуске канала предварительной версии для пакета SDK для приложений Windows 1.1
- Заметки о выпуске канала предварительной версии для пакета SDK для приложений Windows 1.0
Версия 1.6(предварительная версия 2) (1.6.0-preview2)
Это последний выпуск канала предварительной версии для версии 1.6.
В существующем приложении пакета SDK для приложений Windows 1.5 (из стабильного канала) можно обновить пакет Nuget до версии 1.6.0-preview2 (см. раздел "Обновление пакета" в Visual Studio и управление ими с помощью диспетчер пакетов NuGet).
Сведения об обновленной среде выполнения и MSIX см. в разделе "Загрузки" для пакета SDK для приложений Windows.
Новые возможности
Обязательные изменения проекта C# для версии 1.6-preview2
Для этого выпуска также требуется руководство по проекту C# из версии 1.6-preview1 .
Поддержка собственного AOT
1.6-preview2 включает значительные изменения, которые необходимо обновить до выпущенной версии Microsoft.Windows.CsWinRT версии 2.1.1 и сделать сборку более надежной для собственной компиляции в преддверии времени.
Обновлена интеграция пакета SDK Для Edge WebView2
Этот выпуск теперь ссылается на выпущенную версию пакета 1.0.2651.64, которая должна устранять проблемы с предварительной версией Microsoft.Web.WebView2
, на которую ссылается версия 1.6-preview1. Как отмечалось в версии 1.6-preview1, приложения теперь смогут выбрать более новую версию Microsoft.Web.WebView2
пакета при желании.
Исправления ошибок
1.6-preview2 содержит следующие новые исправления после выпуска 1.6-preview1:
- Исправлен сбой при задании
InfoBar.IsOpen
в XAML. Дополнительные сведения см. в статье о проблеме GitHub #8391. - Исправлена проблема, из-за которой элементы HTML потеряют запись указателя при перемещении мыши за пределы
WebView2
границ. Дополнительные сведения см. в статье о проблеме GitHub #8677. - Исправлена проблема, из-за которой перетаскивание и перетаскивание в всплывающее
ShouldConstrainToRootBounds=false
меню не работало. Дополнительные сведения см. в статье GitHub о проблеме 9276. - Исправлена проблема, из-за которой
ms-appx://
ссылки не работали приPublishSingleFile
включении. Дополнительные сведения см. в статье о проблеме GitHub #9468. - Исправлена проблема, из-за которой символы отладчика не работали правильно для некоторых двоичных файлов. Дополнительные сведения см. в статье о проблеме GitHub #4633.
- Исправлен разрыв сборки при использовании
/permissive-
. Дополнительные сведения см. в статье о проблеме GitHub #4643. - Исправлена пара критических изменений API в версии 1.6-preview1, вызванная переименованными параметрами. Дополнительные сведения см. в статье о проблеме GitHub #4645.
- Исправлены разрывы сборки конфликтов типов, пострадавшие от некоторых проектов в версии 1.6-preview1, особенно с типами
Windows.UI.Text
. Дополнительные сведения см. в статье о проблеме GitHub #4646. - Исправлена проблема с поиском ресурсов по библиотекам элементов управления в версии 1.6-preview1. Дополнительные сведения см. в статье о проблеме GitHub #4649.
- Исправлен потенциальный сбой при подклассах
NavigationView
. - Исправлена проблема, из-за которой границы таблицы не
RichEditBox
были правильно удалены при прокрутке или уменьшении размера таблицы. - Исправлена проблема, из-за которой всплывающие элементы имели
MediaTransportControls
полностью прозрачный фон. - Исправлена проблема, из-за которой перетаскивание в WebView2 завершилось ошибкой или сбоем в неправильном расположении на коэффициентах масштабирования отображения, отличных от 100 % или при включении масштабирования системного текста.
- Исправлена проблема
TextBox
/RichEditBox
, из-за которой не объявлять средства специальных возможностей при блокировкеMaxLength
входных данных из-за ограничения.
Версия 1.6(предварительная версия 1) (1.6.0-preview1)
Это последний выпуск канала предварительной версии для версии 1.6.
В существующем приложении пакета SDK для приложений Windows 1.5 (из стабильного канала) можно обновить пакет Nuget до версии 1.6.0-preview1 (см. раздел "Обновление пакета" в Visual Studio и управление ими с помощью nuGet диспетчер пакетов).
Сведения об обновленной среде выполнения и MSIX см. в разделе "Загрузки" для пакета SDK для приложений Windows.
Новые возможности
Примечание.
Новый элемент управления TitleBar, выпущенный в версии 1.6-experimental1, еще не доступен в не экспериментальных сборках версии 1.6, чтобы позволить больше времени оценивать и реагировать на отзывы сообщества. Мы получили много большого вклада здесь и хотим убедиться, что мы забираем время, необходимое для ее решения.
Обязательные изменения проекта C# для версии 1.6-preview1
В версии 1.6-preview1 управляемые приложения windows App SDK требуют Microsoft.Windows.SDK.NET.Ref*.*.*.38
, которые можно указать с помощью WindowsSdkPackageVersion в файлеcsproj
. Например:
<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>
...
Кроме того, управляемые приложения пакета SDK для Приложений Windows должны обновляться до Microsoft.Windows.CsWinRT 2.1.1
(или более поздней версии).
Поддержка собственного AOT
Теперь свойство проекта .NET PublishAot
поддерживается для собственной компиляции "Впереди времени". Дополнительные сведения о собственном AOT см. в разделе "Собственное развертывание AOT". Так как AOT основывается на поддержке Trimming, большая часть руководства, связанного с Trimming, ранее описанная в выпуске 1.6-экспериментальной1, также применяется. Дополнительные сведения см . в поддержке Native AOT.
Как отмечалось выше, проекты C# должны иметь ссылку на пакет Microsoft.Windows.CsWinRT 2.1.1 (или более поздней версии). Эта версия включает в себя безопасную ICustomPropertyProvider
реализацию AOT. Типы, используемые с этой поддержкой, должны быть помечены атрибутом WinRT.GeneratedBindableCustomProperty
вместе с создаваемым partial
.
Интеграция с пакетом SDK для Edge WebView2
Пакет SDK для приложений Windows теперь использует пакет SDK Для Edge WebView2 в качестве ссылки на NuGet, а не внедряет жестко закодированную версию пакета SDK Edge WebView2. Новая модель позволяет приложениям выбирать более новую версию Microsoft.Web.WebView2
пакета, а не ограничиваться версией, с помощью которой был создан пакет SDK для Windows. Новая модель также позволяет приложениям ссылаться на пакеты NuGet, которые также ссылались на пакет SDK Edge WebView2. Дополнительные сведения см. в статье о проблеме GitHub #5689.
Новые API развертывания пакетов
API управления пакетами получил несколько улучшений, включая Is*ReadyOrNewerAvailable*(), EnsureReadyOptions.RegisterNewerIfAvailable, Is*Provisioned*(), IsPackageRegistrationPending() и несколько исправлений ошибок. Дополнительные сведения см . в разделе PackageManagement.md и запрос на вытягивание #4453 .
Улучшенный разрыв вкладки TabView
TabView
поддерживает новый CanTearOutTabs
режим, который предоставляет расширенный интерфейс для перетаскивания вкладок и перетаскивания в новое окно. Если этот новый параметр включен, перетаскивание вкладок очень похоже на режим перетаскивания вкладок в Edge и Chrome, где новое окно сразу же создается во время перетаскивания, что позволяет пользователю перетаскивать его на край экрана, чтобы развернуть или привязать окно в одном плавном движении. Эта реализация также не использует API перетаскивания, поэтому это не влияет на какие-либо ограничения в этих API. В частности, разрыв вкладки поддерживается в процессах, работающих с повышенными привилегиями от имени администратора.
Другие важные изменения
- Мы добавили новый
ColorHelper.ToDisplayName()
API, заполнив этот разрыв от UWP. - Добавлен новый класс, который, в частности, включает в
Microsoft.Windows.Globalization.ApplicationLanguages
себя новуюPrimaryLanguageOverride
функцию. Дополнительные сведения см. в статье о проблеме GitHub #4523. - Неуправляемый
ItemsWrapGrid
. Это должно быть изменение, совместимое с обратной совместимостью. PipsPager
поддерживает новый режим, в котором он может выполнять оболочку между первыми и элементами списка.RatingControl
теперь является более настраиваемым, переместив некоторые жестко закодированные свойства стиля в ресурсы темы. Это позволяет приложениям переопределить эти значения, чтобы лучше настроить внешний вид RatingControl.
Известные проблемы
- Если отладчик настроен на разрыв для всех исключений C++, он разорвит пару шумных исключений при запуске в коде BCP47 (глобализация Windows).
Исправления ошибок
- Исправлены некоторые проблемы, связанные с обработкой сценариев пользовательской панели заголовков. Дополнительные сведения см. в статье о проблемах GitHub #7629, #9670, #9709 и #8431.
- Исправлена проблема, из-за которой
InfoBadge
значок не был видимым. Дополнительные сведения см. в статье о проблеме GitHub #8176. - Исправлена проблема со значками, которые иногда отображаются в неправильной позиции
CommandBarFlyout
. Дополнительные сведения см. в статье о проблеме GitHub #9409. - Исправлена проблема с фокусом клавиатуры в меню при открытии или закрытии подмены. Дополнительные сведения см. в статье о проблеме GitHub #9519.
- Исправлена проблема с
TreeView
использованием неправильногоIsExpanded
состояния при перезапуске элементов. Дополнительные сведения см. в статье о проблеме GitHub #9549. - Исправлена проблема при использовании привязки ElementName в объекте
ItemsRepeater.ItemTemplate
. Дополнительные сведения см. в статье о проблеме GitHub #9715. - Исправлена проблема с первым элементом в
ItemsRepeater
иногда с неправильной позицией. Дополнительные сведения см. в статье о проблеме GitHub #9743. - Исправлена проблема с
InputNonClientPointerSource
иногда критическим вводом к кнопкам min/max/close. Дополнительные сведения см. в статье о проблеме GitHub #9749. - Исправлена ошибка компиляции при использовании Microsoft.UI.Interop.h с clang-cl. Дополнительные сведения см. в статье о проблеме GitHub #9771.
- Исправлена проблема, из-за которой
CharacterReceived
событие не работало/ComboBox
TextBox
. Дополнительные сведения см. в статье о проблеме GitHub #9786. - Исправлена проблема в экспериментальных сборках версии 1.6, в которой поведение
CanTearOutTabs
ввода указателя неправильно для мониторов с коэффициентом масштабирования отличается от 100 %. Дополнительные сведения см. в статье о проблеме GitHub #9791. - Исправлена проблема в сборке 1.6-экспериментальной2, в которой некоторые переводы языков имели проблемы с кодировкой символов.
ColorHelper.ToDisplayName()
- Исправлена проблема с 1.6-экспериментальной1, где
NumberBox
не использовался правильный передний план и фоновые цвета. Дополнительные сведения см. в статье о проблеме GitHub #9714. - Исправлена проблема, из-за которой повторяющиеся
KeyUp
события были вызваны для клавиш со стрелками и вкладками. Дополнительные сведения см. в статье о проблеме GitHub #9399. - Исправлена проблема, из-за которой
PowerManager.SystemSuspendStatusChanged
событие было непригодным для полученияSystemSuspendStatus
. Дополнительные сведения см. в статье о проблеме GitHub #2833. - Исправлена проблема, из-за которой начальный фокус клавиатуры не был правильно задан
WebView2
, когда это был единственный элемент управления в окне. - Исправлена проблема, при использовании
ExtendsContentIntoTitleBar=true
которой кнопки Min/Max/Close не отображались в модель автоматизации пользовательского интерфейса, что не позволило отображать номера голосовых кнопок. - Исправлена проблема, из-за которой приложение может завершиться сбоем в проверке блокировки из-за неожиданного повторного входа.
- Исправлена проблема, из-за которой
Hyperlink
цвета неправильно обновлялись при переключении в тему высокой контрастности. - Исправлена проблема, из-за которой изменение коллекции
ListView
в фоновом окне может неправильно переместить это окно на передний план и сосредоточиться. - Исправлена проблема из 1.6-экспериментальной версии, из-за которой параметр
AcrylicBrush.TintLuminosityOpacity
в XAML в проекте библиотеки классов завершился сбоем с ошибкой преобразования типов. - Исправлена проблема, из-за которой вызов
ItemsRepeater.StartBringIntoView
иногда может привести к исчезновению элементов. - Исправлена проблема, из-за которой касание и перетаскивание в ней
Button
ScrollViewer
осталось бы в состоянии нажатия. - Обновлена технология IntelliSense, которая отсутствовала для многих новых типов и членов.
- Исправлена проблема, из-за которой щелкнуть пустую область
ScrollViewer
фокуса всегда перемещается к первому фокусируемому элементу управления вScrollViewer
элементе управления и прокрутите его в режиме просмотра. Дополнительные сведения см. в статье о проблеме GitHub #597. - Исправлена проблема, из-за которой
Window.Activated
событие иногда запускалось несколько раз. Дополнительные сведения см. в статье о проблеме GitHub #7343. - Исправлена проблема, из-за которой свойство
NavigationViewItem.IsSelected
true
не позволяло отображать дочерние элементы при развертывании. Дополнительные сведения см. в статье о проблеме GitHub #7930. - Исправлена проблема, из-за которой
MediaPlayerElement
неправильно отображались заголовки сNone
эффектами края илиDropShadow
эффектами края. Дополнительные сведения см. в статье о проблеме GitHub #7981. - Исправлена проблема, из-за которой
Flyout.ShowMode
свойство не использовалось при отображении всплывающего элемента. Дополнительные сведения см. в статье о проблеме GitHub #7987. - Исправлена проблема, из-за которой
NumberBox
иногда возникают ошибки округления. Дополнительные сведения см. в статье о проблеме GitHub #8780. - Исправлена проблема, из-за которой использование библиотеки, скомпилированной в более старой версии WinAppSDK, может привести к ошибке, пытающейся найти тип или свойство. Дополнительные сведения см. в статье о проблеме GitHub #8810.
- Исправлена проблема, из-за которой при запуске окна начальная фокуса клавиатуры не была задана. Дополнительные сведения см. в статье о проблеме GitHub #8816.
- Исправлена проблема, из-за которой
FlyoutShowMode.TransientWithDismissOnPointerMoveAway
она не работала после первого отображения. Дополнительные сведения см. в статье о проблеме GitHub #8896. - Исправлена проблема, из-за которой некоторые элементы управления не правильно привязывался
Foreground
к шаблону иBackground
свойствам. Дополнительные сведения см. в статье о проблеме GitHub #7070, #9020, #9029, #9083 и #9102. - Исправлена проблема, из-за которой
ThemeResource
в наборах не обновлялосьVisualStateManager
изменение темы. Часто затронутые элементы управления во всплывающих элементах управления. Дополнительные сведения см. в статье о проблеме GitHub #9198. - Исправлена проблема, из-за
WebView
которой основной фокус теряется, что приводит к дополнительным событиям размытия или фокуса и другим проблемам. Дополнительные сведения см. в статье о проблеме GitHub #9288. - Исправлена проблема, из-за которой
NavigationView
в выходных данных отладки может отображаться ошибка привязки. Дополнительные сведения см. в статье о проблеме GitHub #9384. - Исправлена проблема, из-за которой файлы SVG, определяющие отрицательное поле просмотра, больше не отображались. Дополнительные сведения см. в статье о проблеме GitHub #9415.
- Исправлена проблема, из-за которой изменение
ItemsView.Layout
ориентации привело к удалению элемента. Дополнительные сведения см. в статье о проблеме GitHub #9422. - Исправлена проблема, из-за которой прокрутка созданного
ScrollView
большого количества выходных данных отладки. Дополнительные сведения см. в статье о проблеме GitHub #9434. - Исправлена проблема, из-за которой
MapContorl.InteractiveControlsVisible
не работали должным образом. Дополнительные сведения см. в статье о проблеме GitHub #9486. - Исправлена проблема, из-за которой
MapControl.MapElementClick
событие не срабалось должным образом. Дополнительные сведения см. в статье о проблеме GitHub #9487. - Исправлена проблема, из-за которой x:Bind не проверял значение NULL перед использованием слабой ссылки, что может привести к сбою. Дополнительные сведения см. в статье о проблеме GitHub #9551.
- Исправлена проблема, из-за которой изменение
TeachingTip.Target
свойства неправильно обновлялось. Дополнительные сведения см. в статье о проблеме GitHub #9553. - Исправлена проблема, из-за которой раскрывающийся список не ответил в WebView2. Дополнительные сведения см. в статье о проблеме GitHub #9566.
- Исправлена утечка памяти при использовании
GeometryGroup
. Дополнительные сведения см. в статье о проблеме GitHub #9578. - Исправлена проблема, из-за которой прокрутка очень большого количества элементов из элемента в объекте
ItemRepeater
ScrollView
может привести к пустым кадрам отрисовки. Дополнительные сведения см. в статье о проблеме GitHub #9643. - Исправлена проблема, из-за которой
SceneVisual
не работало.
Новые API в версии 1.6.0-preview1
Версия 1.6-preview1 включает следующие новые API по сравнению с стабильным выпуском 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
См. также
Windows developer