Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Вы можете выбрать между стабильными, предварительными иэкспериментальными каналами в зависимости от потребностей разработки — от надежных рабочих сборок до раннего доступа к предстоящим функциям. Дополнительные сведения о каналах выпуска.
Сведения об обновленной среде выполнения и MSIX см. в разделе "Загрузки" для пакета SDK для приложений Windows.
Версия 1.6.9 (1.6.250602001)
Исправления ошибок
- Исправлен потенциальный сбой в WindowChrome::SetTitleBar при закрытии окна. Дополнительные сведения см. в статье GitHub о проблеме 9203.
Версия 1.6.8 (1.6.250430001)
Поддержка создания папок ApplicationData.MachinePath
ApplicationData.MachineFolder теперь проще использовать в Windows >=10.0.26100.0 (Ge). Windows создаст папку Machine, если в систему добавится манифест пакета, поддерживающий добровольное участие, и если в системе присутствует Windows App SDK 1.6.8. Дополнительные сведения см. в спецификации ApplicationData.
Исправления ошибок
- Исправлена телеметрия PackageDeploymentManager для правильного отслеживания состояния завершения. Дополнительные сведения см. в статье о проблеме GitHub #5297.
- Исправлен сбой при использовании ввода с помощью пера в приложении для x86.
- Исправлен потенциальный сбой, если окно уже уничтожено, когда WinUI пытается инициализировать для прокрутки.
- Исправлены определения WINDOWSAPPSDK_RELEASE_PATCH и значения Microsoft::WindowsAppSDK::Release::Patch в WindowsAppSDK-VersionInfo.h, чтобы они не всегда равнялись 0. Теперь формат даты определяет сборку и имеет вид yymmdd, а значение патча — это дата в формате mmdd. Это изменение обеспечивает лучшую информацию об используемой версии среды выполнения без изменения размеров переменных или схемы версии.
Версия 1.6.7 (1.6.250402001)
Исправления ошибок
- Улучшена телеметрия в сценариях сбоя в
WindowsAppRuntimeInstall-<arch>.exe. Дополнительные сведения см. в статье о проблеме GitHub #5291. - Исправлена проблема, из-за которой входные данные указателя перестают работать при использовании клавиш со стрелками одновременно. Дополнительные сведения см. в статье о проблеме GitHub #10126.
- Исправлена проблема, из-за которой приложения в удаленном рабочем столе перестают отвечать на входные данные указателя. Дополнительные сведения см. в статье GitHub о проблеме 10009. (Это то же самое исправление, что и исправление ввода указателя и клавиш со стрелками, так как удаленный рабочий стол автоматически отправляет некоторые нажатия клавиш при переключении туда и обратно.)
- Исправлен потенциальный сбой, происходящий при попытке восстановить фокус окна, если событие активации доставлено для окна, которое закрывается.
- Исправлена регрессия производительности, представленная в пакете SDK для приложений Windows 1.6 из-за отсутствия некоторых оптимизаций компоновщика WinUI.
- Исправлена небольшая проблема с производительностью при создании нескольких окон и островов WinUI.
- Исправлен потенциальный сбой, если
ProgressBar::SetProgressBarIndicatorWidthвызывается на панели progressBar, которая не находится в дереве. - Исправлен потенциальный сбой, вызванный тем, что
CPopup::EnsureBridgeClosedиногда приводит к повторному выполнению. - Исправлен возможный сбой при закрытии всплывающего окна из-за использования пустой коллекции дочерних элементов в
CUIElement::FlushPendingKeepVisibleOperations. - Исправлено
PackageDeploymentManager.EnsurePackage*Readyдля обеспечения замены версии. Дополнительные сведения см. в статье о проблеме GitHub 5225.
Версия 1.6.6 (1.6.250228001)
Исправления ошибок
Это выпуск пакета SDK для приложений Windows, содержащий критические исправления ошибок для выпуска 1.6.- Исправлена проблема, из-за которой дочернее окно, передающее WM_NCMOUSELEAVE в родительское окно, приводит к циклу, блокирующему новые события ввода мыши.
- Исправлен сбой, который произойдет в следующем событии AppWindow.Changed после сбоя процесса WebView2.
- Исправлен потенциальный сбой при использовании средства специальных возможностей и закрытии окна.
- Исправлена проблема, из-за которой текстовое поле не принимало ввод с клавиатуры, если фокус был задан, щелкнув по кнопке очистки в текстовом поле. Дополнительные сведения см. в статье о проблеме GitHub #7703.
- Исправлена ошибка, из-за которой не отображалась подсказка для кнопки «Свернуть» в заголовке при использовании
ExtendsContentIntoTitleBar=true. Дополнительные сведения см. в статье о проблеме GitHub #9149.
Этот выпуск включает следующие новые API:
Новое свойство IsPlaceholderContent на WidgetInfo и WidgetUpdateRequestOptions позволяет поставщику мини-приложений указывать, что он будет отображать содержимое заполнителя в случае рендеринга. Например, мини-приложение, показывающее погоду, должно задать значение IsPlaceholderContent значение true, если пользователь еще не указал расположение погоды, и мини-приложение просто отображает информацию о погоде для расположения по умолчанию, например Сиэтла. Если мини-приложение помечается как заполнитель, некоторые хосты могут решить скрыть мини-приложение или определить приоритет других мини-приложений.
Microsoft.Windows.Widgets.Providers
WidgetInfo
IsPlaceholderContent
WidgetUpdateRequestOptions
IsPlaceholderContent
Версия 1.6.5 (1.6.250205002)
Исправления ошибок. Исправлено
несколько проблем с утечкой памяти.Версия 1.6.4 (1.6.250108002)
Исправления ошибок. Исправлена
проблема с выделением текста в многострочного текстового поля. Дополнительные сведения см. в статье о проблеме GitHub [#9965](https://github.com/microsoft/microsoft-ui-xaml/issues/9965). — Исправлена проблема, из-за которой пакет DDLM иногда не устанавливался, предотвращая запуск распакованных приложений. Дополнительные сведения см. в статье о проблеме GitHub [#3855](https://github.com/microsoft/WindowsAppSDK/issues/3855). — Исправлен потенциальный сбой в Detours в некоторых сценариях. Дополнительные сведения см. в статье о проблеме с GitHub [#4937](https://github.com/microsoft/WindowsAppSDK/pull/4937). — Исправлена другая потенциальная проблема, из-за которой меню из CommandBar может неправильно открываться вверх, вместо того чтобы открываться вниз, когда CommandBar находится в нижней части окна. — Исправлен потенциальный сбой при запуске на более старом графическом оборудовании. — Исправлена потенциальная ошибка при обработке событий указателя при закрытии окна. — Исправлен потенциальный сбой, вызванный CUIAWindow::InitIds, иногда провоцирующий повторный вход. — Исправлен потенциальный сбой при использовании события CompositionCapabilities.Changed. — Исправлена проблема с некоторыми символами Юникода, отображающимися как квадраты в TextBox/RichEditBox. — Исправлена обработка в `PackageDeploymentManager.EnsurePackage*Async()` для `options.RegisterNewerIfAvailable`. Дополнительные сведения см. в статье о проблеме GitHub [#4864](https://github.com/microsoft/WindowsAppSDK/issues/4864).Версия 1.6.3 (1.6.241114003)
Исправления ошибок
Это выпуск пакета SDK для приложений Windows, содержащий критические исправления ошибок для выпуска 1.6. — Исправлена проблема, из-за которой включалась отрисовка пользовательской панели заголовков при чтении свойства AppWindow.ExtendsContentIntoTitleBar. Дополнительные сведения см. в статье о проблеме GitHub [#9988](https://github.com/microsoft/microsoft-ui-xaml/issues/9988). — Исправлен потенциальный сбой при разрушении `TextBox`/`RichEditBox`. Дополнительные сведения см. в статье о проблеме GitHub [#9070](https://github.com/microsoft/microsoft-ui-xaml/issues/9070). — Исправлена проблема, из-за которой `PackageDeploymentManager.IsPackageReadyOrNewerAvailable()` не работала. Дополнительные сведения см. в статье о проблеме GitHub [#4817](https://github.com/microsoft/WindowsAppSDK/issues/4817). — Исправлена проблема, из-за которой происходила утечка ScrollViewer. — Добавлено обнаружение для редкого сценария, когда приложение останавливает отрисовку и никогда не восстанавливается. — Исправлена проблема, из-за которой `PackageDeploymentManager.RegisterPackageSetAsync()` требует URI, хотя он должен быть необязательным для регистрации с помощью PackageFamilyName. — Исправлена проблема, из-за которой не удалось установить или удалить приложения. Дополнительные сведения см. в статье о проблеме GitHub [#4881](https://github.com/microsoft/WindowsAppSDK/issues/4881).Этот выпуск включает следующие новые API, которые позволяют поставщикам мини-приложений включать веб-содержимое в свои мини-приложения:
Microsoft.Windows.Widgets.Providers
IWidgetManager2
IWidgetProviderMessage
IWidgetResourceProvider
WidgetManager
SendMessageToContent
WidgetMessageReceivedArgs
WidgetResourceRequest
WidgetResourceRequestedArgs
WidgetResourceResponse
Версия 1.6.1 (1.6.240923002)
Исправления
- Исправлен сбой при использовании FocusVisualKind.Reveal(). Дополнительные сведения см. в статье о проблеме GitHub #9966.
- Исправлены шумные исключения C++ из Bcp47Langs.dll. Дополнительные сведения см. в статье о проблеме GitHub #4691. Обратите внимание, что это исправление удаляет синхронизацию с
Windows.Globalization.ApplicationLanguages.PrimaryLanguageOverride.- Исправлена проблема, из-за которой событие
Unloadedбыло создано сразу после показаContentDialog. Дополнительные сведения см. в статье о проблеме GitHub #8402.- Исправлена проблема, из-за которой меню CommandBar, возможно, неправильно открывалось вверх, даже если место позволяло открыть его вниз.
- Исправлены некоторые проблемы, при которых входные данные в
InputNonClientPointerSourceрегионы не обрабатывались правильно, когда окно верхнего уровня выполнялось в режиме справа налево.- Исправлена проверка на этапе компиляции для версии фреймворка Windows SDK, чтобы обеспечить обработку слегка изменённого имени фреймворка, используемого для .NET 9.
Версия 1.6
Изменения проекта C++
При обновлении проекта C++ до версии 1.6 необходимо добавить ссылку на проект в
Microsoft.Web.WebView2пакет. Если вы обновляете пакеты через диспетчер NuGet в Visual Studio, эта зависимость будет добавлена автоматически.
Изменения проекта C#
В 1.6 управляемые приложения пакета SDK для приложений Windows требуют 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(или более поздней версии).
Замечание
Эти ручные ссылки больше не потребуются после выпуска следующего обновления SDK .NET.
Нативная поддержка AOT
![]()
Свойство проекта .NET
PublishAotтеперь поддерживается для собственной компиляции на этапе разработки. Дополнительные сведения о нативном AOT см. в разделе "Нативное развертывание AOT". Из-за того, что AOT основывается на поддержке обрезки, большая часть следующих рекомендаций по обрезке также применяется к AOT.Для
PublishAotподдержки и настройки функциональности обрезки, в дополнение к изменениям проекта C#, описанным в предыдущем разделе, вам также потребуется ссылка на Microsoft.Windows.CsWinRT2.1.1(или более поздней версии), чтобы включить генератор исходного кода из этого пакета, пока не будет выпущено следующее обновление SDK для .NET, после чего это больше не потребуется.Дополнительные сведения см. в документации по поддержке CsWinRT Trimming / AOT и заметках о выпуске CsWinRT 2.1.1.
Так как пакет SDK для приложений Windows вызывает целевые объекты публикации при развертывании F5, рекомендуется включить
PublishAotво время восстановления NuGet, добавив его вcsprojфайл:<PublishAot>true</PublishAot>
Устранение проблем AOT
В этом выпуске разработчик отвечает за правильную корневую привязку всех типов, чтобы избежать исключения (например, с целями, основанными на отражении
{Binding}). Более поздние выпуски расширят возможности C#/WinRT и компилятора XAML, чтобы автоматизировать корневую обработку, где это возможно, оповещать разработчиков о рисках, связанных с обрезкой, и предоставят механизмы для разрешения.Частичные классы
C#/WinRT в версии 2.1.1 также включает
PublishAotподдержку. Чтобы включить класс для публикации AOT с помощью C#/WinRT, сначала его необходимо пометитьpartial. Это позволяет исходному анализатору C#/WinRT AOT атрибутировать классы для статического анализа. Только классы (содержащие методы, которые являются целями для обрезки) требуют этот атрибут.Небезопасная ошибка кода
Генератор источника CsWinRT может создать код, который использует
unsafe. Если вы столкнулись с такой ошибкой во время компиляции или с диагностическим предупреждением (CS0227 для "Небезопасный код может отображаться только в том случае, если компиляция выполняется с использованием /unsafe"), вы должны установить для EnableUnsafeBlocks значение true. Дополнительные сведения см. в статье GitHub о проблеме CsWinRT #1721.WebView2 еще не совместим с AOT
Проекции WebView2 в
Microsoft.Web.WebView2пакете версии 1.0.2651.64 еще не совместимы с AOT. Это будет исправлено в предстоящем выпуске пакетаMicrosoft.Web.WebView2, на который вы затем сможете ссылаться в своем проекте.Методы, исключающие отражения
Чтобы обеспечить совместимость с AOT, методы на основе отражения следует заменить статически типизированной сериализацией, AppContext.BaseDirectory, typeof() и т. д. Для получения подробной информации см. "Введение в предупреждения о тримминге".
Типы укоренения
Пока не будет реализована полная поддержка, типы могут быть убережены от обрезки следующим образом:
{Binding}Учитывая проект
P, использующий сборкуAс типомTв пространстве именN, которое ссылается только динамически (поэтому обычно сокращается),Tможно сохранить с помощью:
P.csproj:<ItemGroup> <TrimmerRootDescriptor Include="ILLink.Descriptors.xml" /> </ItemGroup>
ILLink.Descriptors.xml:<?xml version="1.0" encoding="utf-8"?> <linker> <assembly fullname="A"> <type fullname="N.T" preserve="all" /> </assembly> </linker>Полный синтаксис xml-выражений корневого дескриптора см. в разделе "Корневые дескрипторы".
Замечание
Пакеты зависимостей, которые еще не внедрили поддержку AOT, могут столкнуться с проблемами во время выполнения.
Разъединённое управление версиями WebView2
Windows App SDK теперь использует Edge WebView2 SDK в виде ссылки NuGet вместо жестко закодированной версии этого SDK. Новая модель позволяет приложениям выбирать более новую версию
Microsoft.Web.WebView2пакета, а не ограничиваться версией, с помощью которой был создан пакет SDK для Windows. Новая модель также позволяет приложениям ссылаться на пакеты NuGet, которые также ссылались на пакет SDK Edge WebView2. Дополнительные сведения см. в статье о проблеме GitHub #5689.
Новые API развертывания пакетов
API управления пакетами получил несколько улучшений, включая Is*ReadyOrNewerAvailable*(), EnsureReadyOptions.RegisterNewerIfAvailable, Is*Provisioned*(), IsPackageRegistrationPending() и несколько исправлений ошибок. Подробнее смотрите в PackageManagement.md и Pull Request #4453.
Улучшенный разрыв вкладки TabView
![]()
TabViewподдерживает новыйCanTearOutTabsрежим, который предоставляет расширенный интерфейс для перетаскивания вкладок и перетаскивания в новое окно. Если этот новый параметр включен, перетаскивание вкладок очень похоже на режим перетаскивания вкладок в Edge и Chrome, где новое окно сразу же создается во время перетаскивания, что позволяет пользователю перетаскивать его на край экрана, чтобы развернуть или привязать окно в одном плавном движении. Эта реализация также не использует API перетаскивания, поэтому это не влияет на какие-либо ограничения в этих API. В частности, возможность отрыва вкладок поддерживается в процессах, работающих с повышенными привилегиями администратора.
Другие заметные изменения
- Добавлен новый
ColorHelper.ToDisplayName()API, заполнивший этот пробел в UWP.- Добавлен новый
Microsoft.Windows.Globalization.ApplicationLanguagesкласс, который содержит новую функциюPrimaryLanguageOverride. Дополнительные сведения см. в статье о проблеме GitHub #4523.- Распечатанный
ItemsWrapGrid. Это должно быть обратно совместимое изменение.PipsPagerподдерживает новый режим, в котором он может переключаться между первым и последним элементами.
![]()
RatingControlтеперь является более настраиваемым, переместив некоторые жестко закодированные свойства стиля в ресурсы темы. Это позволяет приложениям переопределить эти значения, чтобы лучше настроить внешний вид RatingControl.![]()
- WinUI 3 перешел на типографическую модель для выбора шрифта, вместо устаревшей модели веса, растяжения и стиля. Типографическая модель требуется для некоторых новых шрифтов, включая переменную пользовательского интерфейса Segoe, и обеспечивает расширенные возможности шрифтов. Некоторые старые шрифты, зависящие от модели выбора, основанной на весе, растяжении и стиле, могут не обнаруживаться с помощью типографической модели.
Известные проблемы
- Если отладчик настроен останавливать выполнение при возникновении всех исключений C++, он будет останавливать выполнение при запуске на некоторых шумных исключениях в коде, связанном с BCP47 (глобализация Windows). Дополнительные сведения см. в статье о проблеме GitHub #4691.
- Пакеты библиотеки компонентов, ссылающиеся на пакет SDK для приложений Windows 1.6, не будут правильно получать содержимое пакета WebView2. Дополнительные сведения см. в разделе WebView2Feedback #4743. Обходной путь — добавить прямую ссылку на
Microsoft.Web.WebView2пакет, где это необходимо.- Приложения, скомпилированные с помощью Native AOT, иногда могут столкнуться с зависанием после навигации по страницам из-за состояния гонки в потоке GC среды выполнения .NET. Дополнительные сведения см. в статье о проблеме .NET #104582.
- Первоначальный выпуск версии 1.6.0 представил проблему с одной из наших зависимостей, которую мы ожидаем, будет решена в предстоящем выпуске пакета SDK для .NET. Если возникла ошибка с версией Microsoft.Windows.SDK.NET ссылки, необходимо явно ссылаться на версию пакета SDK для .NET, указанную сообщением об ошибке. Например, если ошибка говорит, что вам нужна версия 10.0.19041.38, добавьте в файл следующую команду
.csproj:
<WindowsSdkPackageVersion>10.0.19041.38</WindowsSdkPackageVersion>.
Исправления ошибок
- Исправлен сбой при задании
InfoBar.IsOpenв XAML. Дополнительные сведения см. в статье о проблеме GitHub #8391.- Исправлена проблема, из-за которой элементы HTML потеряют запись указателя при перемещении мыши за пределы
WebView2границ. Дополнительные сведения см. в статье о проблеме GitHub #8677.- Исправлена проблема, из-за которой перетаскивание и отпускание внутрь всплывающего меню
ShouldConstrainToRootBounds=falseне работало. Дополнительные сведения см. в статье GitHub о проблеме 9276.- Исправлена проблема, из-за которой ссылки
ms-appx://не работали при включенииPublishSingleFile. Дополнительные сведения см. в статье о проблеме GitHub #9468.- Исправлена проблема, из-за которой символы отладчика не работали правильно для некоторых двоичных файлов. Дополнительные сведения см. в статье о проблеме GitHub #4633.
- Исправлен потенциальный крах при создании подкласса
NavigationView.- Исправлена проблема, из-за которой границы таблицы в
RichEditBoxне стирались должным образом при прокрутке или уменьшении размера таблицы.- Исправлена проблема, из-за которой всплывающие элементы из
MediaTransportControlsимели полностью прозрачный фон.- Исправлена проблема, при которой перетаскивание в WebView2 либо завершалось неудачно, либо происходило в неправильном месте при использовании коэффициентов масштабирования экрана, отличных от 100 %, или когда включено масштабирование системного текста.
- Исправлена проблема, из-за которой средства специальных возможностей не объявляли, когда входные данные были заблокированы из-за ограничения
TextBox.- Исправлены некоторые проблемы, связанные с обработкой сценариев пользовательской панели заголовков. Дополнительные сведения см. в статье о проблемах 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.- Исправлена проблема, из-за которой повторяющиеся
KeyUpсобытия вызывались для клавиш со стрелками и клавиши Tab. Дополнительные сведения см. в статье о проблеме GitHub #9399.- Исправлена проблема, из-за которой событие
PowerManager.SystemSuspendStatusChangedбыло невозможно использовать для полученияSystemSuspendStatus. Дополнительные сведения см. в статье о проблеме GitHub #2833.- Исправлена проблема, из-за которой начальный фокус клавиатуры не был правильно задан
WebView2, когда это был единственный элемент управления в окне.- Исправлена проблема, из-за которой при использовании
ExtendsContentIntoTitleBar=trueкнопки свернуть / развернуть / закрыть неправильно отображались в автоматизации пользовательского интерфейса, что препятствовало корректному отображению номеров в голосовом доступе для этих кнопок.- Исправлена проблема, из-за которой приложение могло завершиться сбоем при проверке блокировки из-за неожиданного повторного входа.
- Исправлена проблема, из-за которой
Hyperlinkцвета неправильно обновлялись при переключении в тему высокой контрастности.- Исправлена проблема, из-за которой изменение коллекции
ListViewв фоновом окне может неправильно перемещать это окно на передний план и фокусировать на нем внимание.- Исправлена проблема, из-за которой вызов
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.- Исправлена проблема, из-за которой использование библиотеки, скомпилированной против более старой версии Windows App SDK, могло привести к ошибке при попытке найти тип или свойство. Дополнительные сведения см. в статье о проблеме 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 включает следующие новые API по сравнению с стабильным выпуском 1.5:
Microsoft.UI ColorHelper ToDisplayNameMicrosoft.UI.Input EnteredMoveSizeEventArgs EnteringMoveSizeEventArgs ExitedMoveSizeEventArgs InputNonClientPointerSource EnteredMoveSize EnteringMoveSize ExitedMoveSize WindowRectChanged WindowRectChanging MoveSizeOperation WindowRectChangedEventArgs WindowRectChangingEventArgsMicrosoft.UI.Xaml XamlRoot CoordinateConverterMicrosoft.UI.Xaml.Automation.Peers ScrollPresenterAutomationPeerMicrosoft.UI.Xaml.Controls PipsPager WrapMode WrapModeProperty PipsPagerWrapMode TabView CanTearOutTabs CanTearOutTabsProperty ExternalTornOutTabsDropped ExternalTornOutTabsDropping TabTearOutRequested TabTearOutWindowRequested TabViewExternalTornOutTabsDroppedEventArgs TabViewExternalTornOutTabsDroppingEventArgs TabViewTabTearOutRequestedEventArgs TabViewTabTearOutWindowRequestedEventArgsMicrosoft.Windows.Globalization ApplicationLanguagesMicrosoft.Windows.Management.Deployment EnsureReadyOptions RegisterNewerIfAvailable PackageDeploymentFeature PackageDeploymentManager IsPackageDeploymentFeatureSupported IsPackageProvisioned IsPackageProvisionedByUri IsPackageReadyOrNewerAvailable IsPackageReadyOrNewerAvailableByUri IsPackageSetProvisioned IsPackageSetReadyOrNewerAvailable PackageReadyOrNewerAvailableStatusMicrosoft.Windows.Storage ApplicationData ApplicationDataContainer ApplicationDataContract ApplicationDataCreateDisposition ApplicationDataLocality
Версия 1.6(предварительная версия 2) (1.6.0-preview2)
Это последний выпуск канала предварительной версии для версии 1.6.
В существующем приложении Windows App SDK 1.5 (из стабильного канала) можно обновить пакет NuGet до версии 1.6.0-preview2 (см. раздел Обновление пакета в Установка и управление пакетами в Visual Studio с использованием диспетчера пакетов NuGet).
Сведения об обновленной среде выполнения и MSIX см. в разделе "Загрузки" для пакета SDK для приложений Windows.
Поддержка собственного AOT
1.6-preview2 включает существенные изменения для обновления до выпущенной версии Microsoft.Windows.CsWinRT 2.1.1 и улучшения надежности сборки для собственной компиляции в режиме Ahead-Of-Time.
Обновлена интеграция пакета 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.
- Исправлены ошибки сборки из-за конфликтов типов, затрагивавшие некоторые проекты, особенно для типов
Windows.UI.Text, в версии 1.6-preview1.- Исправлена проблема с поиском ресурсов по библиотекам элементов управления в версии 1.6-preview1. Дополнительные сведения см. в статье о проблеме GitHub #4649.
- Исправлен потенциальный крах при создании подкласса
NavigationView.- Исправлена проблема, из-за которой границы таблицы в
RichEditBoxне стирались должным образом при прокрутке или уменьшении размера таблицы.- Исправлена проблема, из-за которой всплывающие элементы из
MediaTransportControlsимели полностью прозрачный фон.- Исправлена проблема, при которой перетаскивание в WebView2 либо завершалось неудачно, либо происходило в неправильном месте при использовании коэффициентов масштабирования экрана, отличных от 100 %, или когда включено масштабирование системного текста.
- Исправлена проблема, из-за которой средства специальных возможностей не объявляли, когда входные данные были заблокированы из-за ограничения
TextBox.
Версия 1.6(предварительная версия 1) (1.6.0-preview1)
Замечание
Новый элемент управления TitleBar, выпущенный в версии 1.6-experimental1, еще не доступен в не экспериментальных сборках версии 1.6, чтобы позволить больше времени оценивать и реагировать на отзывы сообщества. Мы получили множество отличных отзывов здесь и хотим убедиться, что мы уделяем время, необходимое для их рассмотрения.
Обязательные изменения проекта C# для версии 1.6-preview1
В версии 1.6-preview1 управляемые приложения Windows App SDK требуют Microsoft.Windows.SDK.NET.Ref, который можно указать с помощью
*.*.*.38в вашем файле . Рассмотрим пример.<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-experimental1, также применяется. См. поддержку Native AOT для получения дополнительной информации.Как отмечалось выше, проекты C# должны иметь ссылку на пакет Microsoft.Windows.CsWinRT 2.1.1 (или более поздней версии). Эта версия включает в себя безопасную
ICustomPropertyProviderреализацию AOT. Типы, используемые с этой поддержкой, должны быть помечены атрибутомWinRT.GeneratedBindableCustomPropertyи сделаныpartial.
Измененная интеграция с пакетом SDK для Edge WebView2
Windows App SDK теперь использует Edge WebView2 SDK в виде ссылки NuGet вместо жестко закодированной версии этого SDK. Новая модель позволяет приложениям выбирать более новую версию
Microsoft.Web.WebView2пакета, а не ограничиваться версией, с помощью которой был создан пакет SDK для Windows. Новая модель также позволяет приложениям ссылаться на пакеты NuGet, которые также ссылались на пакет SDK Edge WebView2. Дополнительные сведения см. в статье о проблеме GitHub #5689.
Новые API развертывания пакетов
API управления пакетами получил несколько улучшений, включая Is*ReadyOrNewerAvailable*(), EnsureReadyOptions.RegisterNewerIfAvailable, Is*Provisioned*(), IsPackageRegistrationPending() и несколько исправлений ошибок. Подробнее смотрите в PackageManagement.md и Pull Request #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события вызывались для клавиш со стрелками и клавиши Tab. Дополнительные сведения см. в статье о проблеме GitHub #9399.- Исправлена проблема, из-за которой событие
PowerManager.SystemSuspendStatusChangedбыло невозможно использовать для полученияSystemSuspendStatus. Дополнительные сведения см. в статье о проблеме GitHub #2833.- Исправлена проблема, из-за которой начальный фокус клавиатуры не был правильно задан
WebView2, когда это был единственный элемент управления в окне.- Исправлена проблема, из-за которой при использовании
ExtendsContentIntoTitleBar=trueкнопки свернуть / развернуть / закрыть неправильно отображались в автоматизации пользовательского интерфейса, что препятствовало корректному отображению номеров в голосовом доступе для этих кнопок.- Исправлена проблема, из-за которой приложение могло завершиться сбоем при проверке блокировки из-за неожиданного повторного входа.
- Исправлена проблема, из-за которой
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.- Исправлена проблема, из-за которой использование библиотеки, скомпилированной против более старой версии Windows App SDK, могло привести к ошибке при попытке найти тип или свойство. Дополнительные сведения см. в статье о проблеме 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 ToDisplayNameMicrosoft.UI.Input EnteredMoveSizeEventArgs EnteringMoveSizeEventArgs ExitedMoveSizeEventArgs InputNonClientPointerSource EnteredMoveSize EnteringMoveSize ExitedMoveSize WindowRectChanged WindowRectChanging MoveSizeOperation WindowRectChangedEventArgs WindowRectChangingEventArgsMicrosoft.UI.Xaml XamlRoot CoordinateConverterMicrosoft.UI.Xaml.Automation.Peers ScrollPresenterAutomationPeerMicrosoft.UI.Xaml.Controls PipsPager WrapMode WrapModeProperty PipsPagerWrapMode TabView CanTearOutTabs CanTearOutTabsProperty ExternalTornOutTabsDropped ExternalTornOutTabsDropping TabTearOutRequested TabTearOutWindowRequested TabViewExternalTornOutTabsDroppedEventArgs TabViewExternalTornOutTabsDroppingEventArgs TabViewTabTearOutRequestedEventArgs TabViewTabTearOutWindowRequestedEventArgsMicrosoft.Windows.Globalization ApplicationLanguagesMicrosoft.Windows.Management.Deployment EnsureReadyOptions RegisterNewerIfAvailable PackageDeploymentFeature PackageDeploymentManager IsPackageDeploymentFeatureSupported IsPackageProvisioned IsPackageProvisionedByUri IsPackageReadyOrNewerAvailable IsPackageReadyOrNewerAvailableByUri IsPackageSetProvisioned IsPackageSetReadyOrNewerAvailable PackageReadyOrNewerAvailableStatusMicrosoft.Windows.Storage ApplicationData ApplicationDataContainer ApplicationDataContract ApplicationDataCreateDisposition ApplicationDataLocality
Экспериментальная версия 1.6 (1.6.0-experimental2)
Замечание
API Phi Silica и OCR не включены в этот выпуск. Они будут поступать в будущем выпуске 1.6.
Обновления поддержки нативной AOT
В экспериментальной версии 1.6 компилятор XAML генерировал
XamlTypeInfo.g.csс кодом, который не был безопасен для AOT/Trimming. Это связано с проблемой GitHub #9675, хотя она не полностью исправляет эту проблему.
Измененная интеграция с пакетом SDK для Edge WebView2
Windows App SDK теперь использует Edge WebView2 SDK в виде ссылки NuGet вместо жестко закодированной версии этого SDK. Новая модель позволяет приложениям выбирать более новую версию
Microsoft.Web.WebView2пакета, а не ограничиваться версией, с помощью которой был создан пакет SDK для Windows. Новая модель также позволяет приложениям ссылаться на пакеты NuGet, которые также ссылались на пакет SDK Edge WebView2. Дополнительные сведения см. в статье о проблеме GitHub #5689.
Новые API развертывания пакетов
API управления пакетами получил несколько улучшений, включая Is*ReadyOrNewerAvailable*(), EnsureReadyOptions.RegisterNewerIfAvailable, Is*Provisioned*(), IsPackageRegistrationPending() и несколько исправлений ошибок. Подробнее смотрите в PackageManagement.md и Pull Request #4453.
Другие заметные изменения
- Начиная с версии 1.6-экспериментальная2, последний исходный код WinUI 3 теперь будет публиковаться в основной ветви репозитория GitHub microsoft-ui-xaml, что позволит выполнять поиск по коду в этом репозитории.
- Мы добавили новый
ColorHelper.ToDisplayName()API, заполнив этот разрыв от UWP.
- Известная проблема: некоторые переводы языка имеют проблемы с кодировкой символов. Это будет исправлено в следующем выпуске 1.6.
- Добавлен новый
Microsoft.Windows.Globalization.ApplicationLanguagesкласс, который содержит новую функциюPrimaryLanguageOverride. Дополнительные сведения см. в статье о проблеме GitHub #4523.- Новые расширения позволяют поставщикам мини-приложений предоставлять мини-приложения с веб-контентом и объявлениями для мини-приложений.
Новые API для версии 1.6-экспериментальный2
1.6-экспериментальный2 включает следующие новые API. Эти API не экспериментальны, но еще не включены в стабильную версию пакета SDK для приложений Windows.
Microsoft.UI.Xaml.Controls PipsPager WrapMode WrapModeProperty PipsPagerWrapModeMicrosoft.Windows.Globalization ApplicationLanguagesMicrosoft.Windows.Management.Deployment EnsureReadyOptions RegisterNewerIfAvailable PackageDeploymentFeature PackageDeploymentManager IsPackageDeploymentFeatureSupported IsPackageProvisioned IsPackageProvisionedByUri IsPackageReadyOrNewerAvailable IsPackageReadyOrNewerAvailableByUri IsPackageSetProvisioned IsPackageSetReadyOrNewerAvailable PackageReadyOrNewerAvailableStatus
Дополнительные экспериментальные API-интерфейсы 1.6-2
Этот выпуск включает следующие новые и измененные экспериментальные API:
Microsoft.UI ColorHelper ToDisplayNameMicrosoft.UI.Composition CompositionNotificationDeferralMicrosoft.UI.Composition.Experimental ExpCompositionVisualSurface ExpExpressionNotificationProperty IExpCompositionPropertyChanged IExpCompositionPropertyChangedListener IExpCompositor IExpVisualMicrosoft.UI.Content AutomationOptions ChildContentLink ContentAppWindowBridge ContentDisplayOrientations ContentExternalBackdropLink ContentExternalOutputLink ContentIsland Children Compositor Connected ConnectionInfo ConnectRemoteEndpoint Create Disconnected FindAllForCompositor FragmentRootAutomationProvider GetByVisual IsRemoteEndpointConnected NextSiblingAutomationProvider Offset ParentAutomationProvider PreviousSiblingAutomationProvider Root RotationAngleInDegrees ContentIslandEnvironment AutomationOption CurrentOrientation DisplayScale NativeOrientation ThemeChanged ContentSite Compositor Offset RotationAngleInDegrees SetContentNodeParent SetIsInputPassThrough SiteVisual TryGetAutomationProvider ContentSiteAutomationProviderRequestedEventArgs ContentSiteEnvironment CurrentOrientation DisplayScale NativeOrientation NotifyThemeChanged ContentSiteView Offset RotationAngleInDegrees CoreWindowSiteBridge CoreWindowTopLevelWindowBridge DesktopChildSiteBridge AcceptRemoteEndpoint ConnectionInfo IsRemoteEndpointConnected RemoteEndpointConnecting RemoteEndpointDisconnected RemoteEndpointRequestedStateChanged DesktopSiteBridge TryCreatePopupSiteBridge EndpointConnectionEventArgs EndpointRequestedStateChangedEventArgs IContentIslandEndpointConnectionPrivate IContentLink IContentNodeOwner IContentSiteBridge2 IContentSiteBridgeAutomation IContentSiteBridgeEndpointConnectionPrivate PopupWindowSiteBridge ProcessStarter ReadOnlyDesktopSiteBridge SystemVisualSiteBridgeMicrosoft.UI.Input EnteredMoveSizeEventArgs EnteringMoveSizeEventArgs ExitedMoveSizeEventArgs InputKeyboardSource GetForWindowId InputLayoutPolicy InputLightDismissAction GetForIsland InputNonClientPointerSource EnteredMoveSize EnteringMoveSize ExitedMoveSize WindowRectChanged WindowRectChanging InputPointerActivationBehavior InputPointerSource ActivationBehavior DirectManipulationHitTest GetForVisual GetForWindowId RemoveForVisual TouchHitTesting TrySetDeviceKinds MoveSizeOperation ProximityEvaluation TouchHitTestingEventArgs WindowRectChangedEventArgs WindowRectChangingEventArgsMicrosoft.UI.Input.Experimental ExpInputSite ExpPointerPointMicrosoft.UI.Windowing AppWindow DefaultTitleBarShouldMatchAppModeTheme DisplayArea GetMetricsFromWindowIdMicrosoft.UI.Xaml XamlIsland XamlRoot CoordinateConverter TryGetContentIslandMicrosoft.UI.Xaml.Automation.Peers PagerControlAutomationPeer ScrollPresenterAutomationPeerMicrosoft.UI.Xaml.Controls ContentDialogPlacement UnconstrainedPopup ElementFactory FlowLayout FlowLayoutAnchorInfo FlowLayoutLineAlignment FlowLayoutState IApplicationViewSpanningRects IndexPath ISelfPlayingAnimatedVisual ItemContainer CanUserInvoke CanUserInvokeProperty CanUserSelect CanUserSelectProperty ItemInvoked MultiSelectMode MultiSelectModeProperty ItemContainerInteractionTrigger ItemContainerInvokedEventArgs ItemContainerMultiSelectMode ItemContainerUserInvokeMode ItemContainerUserSelectMode LayoutPanel NumberBox InputScope InputScopeProperty TextAlignment TextAlignmentProperty PagerControl PagerControlButtonVisibility PagerControlDisplayMode PagerControlSelectedIndexChangedEventArgs PagerControlTemplateSettings ProgressRing DeterminateSource DeterminateSourceProperty IndeterminateSource IndeterminateSourceProperty RecyclePool RecyclingElementFactory ScrollingViewChangingEventArgs ScrollView ViewChanging SelectionModel SelectionModelChildrenRequestedEventArgs SelectionModelSelectionChangedEventArgs SelectTemplateEventArgs StackLayout IsVirtualizationEnabled IsVirtualizationEnabledProperty StackLayoutState TabView CanTearOutTabs CanTearOutTabsProperty ExternalTornOutTabsDropped ExternalTornOutTabsDropping TabTearOutRequested TabTearOutWindowRequested TabViewExternalTornOutTabsDroppedEventArgs TabViewExternalTornOutTabsDroppingEventArgs TabViewTabTearOutRequestedEventArgs TabViewTabTearOutWindowRequestedEventArgs TitleBar TitleBarAutomationPeer TitleBarTemplateSettings UniformGridLayoutStateMicrosoft.UI.Xaml.Controls.Primitives ScrollPresenter ViewChangingMicrosoft.Windows.ApplicationModel.WindowsAppRuntime DeploymentManager Repair DeploymentStatus PackageRepairFailed ReleaseInfo RuntimeInfo VersionInfoContractMicrosoft.Windows.Widgets.Feeds.Providers FeedManager TryRemoveAnnouncementById IFeedManager3Microsoft.Windows.Widgets.Notifications WidgetAnnouncement WidgetAnnouncementInvokedArgsMicrosoft.Windows.Widgets.Providers IWidgetAnnouncementInvokedTarget IWidgetManager2 IWidgetManager3 IWidgetProviderMessage IWidgetResourceProvider WidgetManager SendMessageToContent TryRemoveAnnouncementById TryShowAnnouncement WidgetMessageReceivedArgs WidgetResourceRequest WidgetResourceRequestedArgs WidgetResourceResponse
Известные проблемы
- При перемещении вкладки TabView поведение ввода указателя для CanTearOutTabs неверно на мониторах с коэффициентом масштабирования дисплея, отличающимся от 100 %. Это будет исправлено в следующем выпуске 1.6.
Исправления ошибок
- Исправлена проблема в 1.6-экспериментальной1, где
NumberBoxне использовал правильные передний и фоновые цвета. Дополнительные сведения см. в статье о проблеме GitHub #9714.- Исправлена проблема, из-за которой повторяющиеся
KeyUpсобытия вызывались для клавиш со стрелками и клавиши Tab. Дополнительные сведения см. в статье о проблеме GitHub #9399.- Исправлена проблема, из-за которой событие
PowerManager.SystemSuspendStatusChangedбыло невозможно использовать для полученияSystemSuspendStatus. Дополнительные сведения см. в статье о проблеме GitHub #2833.- Исправлена проблема, из-за которой начальный фокус клавиатуры не был правильно задан
WebView2, когда это был единственный элемент управления в окне.- Исправлена проблема, из-за которой при использовании
ExtendsContentIntoTitleBar=trueкнопки свернуть / развернуть / закрыть неправильно отображались в автоматизации пользовательского интерфейса, что препятствовало корректному отображению номеров в голосовом доступе для этих кнопок.- Исправлена проблема, из-за которой приложение могло завершиться сбоем при проверке блокировки из-за неожиданного повторного входа.
- Исправлена проблема в версии 1.6-experimental1, где
TitleBarотображался только значок и заголовок, так как при загрузке некоторые элементы не появлялись.- Исправлена проблема, из-за которой
Hyperlinkцвета неправильно обновлялись при переключении в тему высокой контрастности.- Исправлена проблема, из-за которой изменение коллекции
ListViewв фоновом окне может неправильно перемещать это окно на передний план и фокусировать на нем внимание.- Исправлена проблема из 1.6-экспериментальной версии, из-за которой установка
AcrylicBrush.TintLuminosityOpacityв .xaml в проекте библиотеки классов приводила к сбою с ошибкой преобразования типов.- Исправлена проблема, из-за которой вызов
ItemsRepeater.StartBringIntoViewиногда может привести к исчезновению элементов.- Исправлена проблема, из-за которой касание и перетаскивание на
ButtonвScrollViewerоставляло бы его в состоянии нажатия.- Обновился IntelliSense для предоставления информации о многих новых типах и членах, которую раньше не было.
Экспериментальная версия 1.6 (1.6.0-experimental1)
Это последний выпуск экспериментального канала.
Для загрузки перенаправьте версию 1.6.240531000-experimental1 NuGet пакета SDK для приложений Windows.
Обязательные изменения проекта C# для 1.6-experimental1
В версии 1.6-experimental1 управляемые приложения Windows App SDK требуют Microsoft.Windows.SDK.NET.Ref (или более поздней версии), что можно указать с помощью 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.35-preview</WindowsSdkPackageVersion> </PropertyGroup> ...Кроме того, управляемые приложения пакета SDK для Приложений Windows с помощью C#/WinRT должны обновляться до Microsoft.Windows.CsWinRT
2.1.0-prerelease.240602.1(или более поздней версии).
Нативная поддержка AOT
Замечание
Для стабильного выпуска пакета SDK для приложений Windows 1.6.0 нижеприведенные рекомендации устарели. Проекты должны просто устанавливать PublishAot в true безоговорочно.
Свойство проекта .NET PublishAot теперь поддерживается для собственной компиляции на этапе разработки. Для получения подробной информации см. Нативное развертывание AOT. Из-за того, что AOT основывается на поддержке обрезки, большая часть следующих рекомендаций по обрезке также применяется к AOT.
Для PublishAot поддержки в дополнение к изменениям проекта C#, описанным в предыдущем разделе, также потребуется ссылка на пакет Microsoft.Windows.CsWinRT2.1.0-prerelease.240602.1 (или более поздней версии), чтобы включить генератор источника из этого пакета.
Так как пакет SDK для приложений Windows вызывает целевые объекты публикации при развертывании F5, рекомендуется включить PublishAot во время восстановления NuGet, добавив его в csproj файл:
<PublishAot Condition="'$(ExcludeRestorePackageImports)'=='true'">true</PublishAot>
Кроме того, рекомендуется условно включить PublishAot при публикации конфигураций выпуска либо в профилях публикации, либо в проекте:
<PublishAot Condition="'$(Configuration)'=='Release'">true</PublishAot>
Устранение проблем AOT
В этом выпуске разработчик отвечает за правильную корневую привязку всех типов, чтобы избежать исключения (например, с целями, основанными на отражении {Binding}). Более поздние выпуски расширят возможности C#/WinRT и компилятора XAML, чтобы автоматизировать корневую обработку, где это возможно, оповещать разработчиков о рисках, связанных с обрезкой, и предоставят механизмы для разрешения.
Частичные классы
C#/WinRT также включает PublishAot поддержку в версии 2.1.0-prerelease.240602.1. Чтобы включить класс для публикации AOT с помощью C#/WinRT, сначала его необходимо пометить partial. Это позволяет исходному анализатору C#/WinRT AOT атрибутировать классы для статического анализа. Только классы (содержащие методы, которые являются целями для обрезки) требуют этот атрибут.
Методы устранения отражений
Чтобы обеспечить совместимость с AOT, методы на основе отражения следует заменить статически типизированной сериализацией, AppContext.BaseDirectory, typeof() и т. д. Для получения подробной информации см. "Введение в предупреждения о тримминге".
Типы укоренения
Пока не будет реализована полная поддержка {Binding}, типы могут быть сохранены от обрезки следующим образом: учитывая проект P, использующий сборку A с типом T в пространстве имен N, который только динамически ссылается (поэтому обычно подвергается обрезке), T можно сохранить следующим образом:
P.csproj:
<ItemGroup>
<TrimmerRootDescriptor Include="ILLink.Descriptors.xml" />
</ItemGroup>
ILLink.Descriptors.xml:
<?xml version="1.0" encoding="utf-8"?>
<linker>
<assembly fullname="A">
<type fullname="N.T" preserve="all" />
</assembly>
</linker>
Полный синтаксис xml-выражений корневого дескриптора см. в разделе "Корневые дескрипторы".
Замечание
Пакеты зависимостей, которые еще не внедрили поддержку AOT, могут столкнуться с проблемами во время выполнения.
Улучшенный разрыв вкладки TabView
TabViewподдерживает новыйCanTearOutTabsрежим, который предоставляет расширенный интерфейс для перетаскивания вкладок и перетаскивания в новое окно. Если этот новый параметр включен, перетаскивание вкладок очень похоже на режим перетаскивания вкладок в Edge и Chrome, где новое окно сразу же создается во время перетаскивания, что позволяет пользователю перетаскивать его на край экрана, чтобы развернуть или привязать окно в одном плавном движении. Эта реализация также не использует API перетаскивания, поэтому это не влияет на какие-либо ограничения в этих API. В частности, возможность отрыва вкладок поддерживается в процессах, работающих с повышенными привилегиями администратора.Известная проблема: в этом выпуске поведение ввода
CanTearOutTabsуказателя неверно для мониторов с коэффициентом масштабирования, отличающимся от 100%. Это будет исправлено в следующем выпуске 1.6.
Новый элемент управления TitleBar
Новый
TitleBarэлемент управления упрощает создание отличной настраиваемой панели заголовков для приложения со следующими функциями:
- Настраиваемые свойства значка, заголовка и субтитров
- Встроенная кнопка "Назад"
- Возможность добавления пользовательского элемента управления, например поля поиска
- Автоматическое скрытие и отображение элементов на основе ширины окна
- Возможности для отображения активного или неактивного состояния окна
- Поддержка стандартных функций панели заголовка, включая перетаскиваемые области в пустых зонах, адаптацию темы, стандартные кнопки управления (свернуть/развернуть/закрыть) и встроенную поддержку специальных возможностей.
Элемент
TitleBarуправления предназначен для поддержки различных сочетаний строк заголовка, что делает его гибким для создания необходимого интерфейса без необходимости писать большой объем пользовательского кода. Мы учли отзывы по прототипу панели заголовка набора средств сообщества и с нетерпением ждем дополнительных отзывов!Известная проблема: В этом выпуске
TitleBarотображает только значок и заголовок из-за неполадки, которая мешает отображению некоторых элементов при загрузке. Чтобы обойти эту проблему, используйте следующий код, чтобы загрузить другие элементы (подзаголовок, заголовок, содержимое и нижний колонтитул):public MainWindow() { this.InitializeComponent(); this.ExtendsContentIntoTitleBar = true; this.SetTitleBar(MyTitleBar); MyTitleBar.Loaded += MyTitleBar_Loaded; } private void MyTitleBar_Loaded(object sender, RoutedEventArgs e) { // Parts get delay loaded. If you have the parts, make them visible. VisualStateManager.GoToState(MyTitleBar, "SubtitleTextVisible", false); VisualStateManager.GoToState(MyTitleBar, "HeaderVisible", false); VisualStateManager.GoToState(MyTitleBar, "ContentVisible", false); VisualStateManager.GoToState(MyTitleBar, "FooterVisible", false); // Run layout so we re-calculate the drag regions. MyTitleBar.InvalidateMeasure(); }Эта проблема будет устранена в следующем выпуске версии 1.6.
Другие заметные изменения
- Распечатанный
ItemsWrapGrid. Это должно быть обратно совместимое изменение.PipsPagerподдерживает новый режим, в котором он может обертывать между первым элементом и элементами списка.RatingControlтеперь является более настраиваемым, переместив некоторые жестко закодированные свойства стиля в ресурсы темы. Это позволяет приложениям переопределить эти значения, чтобы лучше настроить внешний вид RatingControl.
Новые API для 1.6-experimental1
1.6-экспериментальный1 включает следующие новые API. Эти API не экспериментальны, но еще не включены в стабильную версию пакета SDK для приложений Windows.
Microsoft.UI.Xaml.Controls PipsPager WrapMode WrapModeProperty PipsPagerWrapMode None Wrap
Дополнительные экспериментальные API 1.6
Этот выпуск включает следующие новые и измененные экспериментальные API:
Microsoft.UI.Content ChildContentLink ContentExternalOutputLink IsAboveContent ContentIsland Children Create FindAllForCompositor GetByVisual Offset RotationAngleInDegrees ContentSite Offset RotationAngleInDegrees ContentSiteView Offset RotationAngleInDegrees IContentLink IContentSiteBridge2 ReadOnlyDesktopSiteBridgeMicrosoft.UI.Input EnteredMoveSizeEventArgs EnteringMoveSizeEventArgs ExitedMoveSizeEventArgs InputNonClientPointerSource EnteredMoveSize EnteringMoveSize ExitedMoveSize WindowRectChanged WindowRectChanging MoveSizeOperation WindowRectChangedEventArgs WindowRectChangingEventArgsMicrosoft.UI.Windowing AppWindow DefaultTitleBarShouldMatchAppModeThemeMicrosoft.UI.Xaml XamlRoot CoordinateConverter TryGetContentIslandMicrosoft.UI.Xaml.Controls ScrollingViewChangingEventArgs ScrollView ViewChanging StackLayout IsVirtualizationEnabled IsVirtualizationEnabledProperty TabView CanTearOutTabs CanTearOutTabsProperty ExternalTornOutTabsDropped ExternalTornOutTabsDropping TabTearOutRequested TabTearOutWindowRequested TabViewExternalTornOutTabsDroppedEventArgs TabViewExternalTornOutTabsDroppingEventArgs TabViewTabTearOutRequestedEventArgs TabViewTabTearOutWindowRequestedEventArgs TitleBar TitleBarAutomationPeer TitleBarTemplateSettingsMicrosoft.UI.Xaml.Controls.Primitives ScrollPresenter ViewChanging
Другие известные проблемы
- Приложения, не использующие XAML, которые используют
Microsoft.UI.Content.ContentIslandsи не обрабатывают событие ContentIsland.AutomationProviderRequested (или возвращают nullptr в качестве поставщика автоматизации), завершатся сбоем, если включено любое средство специальных возможностей или автоматизации пользовательского интерфейса, такое как "Голосовой доступ", "Экранный диктор", "Аналитика специальных возможностей", Inspect.exe и т. д.
Исправления ошибок
В этом выпуске содержатся следующие исправления ошибок:
- Исправлена проблема, из-за которой щелчок в пустой области
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.- Исправлена проблема, из-за которой использование библиотеки, скомпилированной против более старой версии Windows App SDK, может возникнуть проблема поиска типа или свойства. Дополнительные сведения см. в статье о проблеме 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не работало.
Windows developer