Сопоставление API-интерфейсов и библиотек UWP с Windows App SDK

В этом разделе приводится сопоставление API UWP с их Windows App SDK эквивалентами. В некоторых случаях сопоставление не является "один к одному"; Любая из платформ может иметь большую или меньшую функциональность, чем другая для пространства имен или класса.

Между двумя платформами есть различия в именах пространств имен и классов (в том числе в элементах управления пользовательского интерфейса). В большинстве случаев нужно лишь изменить имя пространства имен, и код будет успешно работать. Иногда изменяется не только имя пространства имен, но и имя класса или API. Иногда сопоставление требует многих усилий, а в некоторых случаях требуется изменить подход.

Как использовать таблицу. Сначала найдите имя члена класса, который вы используете. Члены перечисляются всякий раз, когда сопоставление сложнее, чем простое имя класса или изменение имени пространства имен. Если вашего члена нет в списке, найдите имя используемого класса. Классы перечисляются всякий раз, когда сопоставление сложнее, чем просто изменение имени пространства имен (конкретные рекомендации см. в руководствах по областям компонентов). Если вашего класса нет в списке, сопоставление является просто изменением пространства имен. Поэтому найдите имя пространства имен класса, а затем найдите эквивалентное имя Windows App SDK имени пространства имен. Ваш класс будет указан в этом пространстве имен. Если пространство имен отсутствует в списке, его имя не изменилось.

UWP Пакет SDK для приложений Windows
(Windows.ApplicationModel.Activation) Класс LaunchActivatedEventArgs (Microsoft.UI.Xaml) Класс LaunchActivatedEventArgs ; например, в App.OnLaunched.
(Windows.ApplicationModel.Core) Метод CoreApplication.CreateNewView (Microsoft.UI.Windowing) Метод AppWindow.Create
(Windows.ApplicationModel.Core) Класс CoreApplicationViewTitleBar (Microsoft.UI.Windowing) Класс AppWindowTitleBar
(Windows.ApplicationModel.Core) Свойство CoreApplicationViewTitleBar.ExtendViewIntoTitleBar (Microsoft.UI.Windowing) Свойство AppWindowTitleBar.ExtendsContentIntoTitleBar . Платформа продолжает рисовать кнопки Свернуть/максимально/закрыть и сообщает сведения о загоражении.
(Windows.ApplicationModel.Core) Свойство CoreApplicationViewTitleBar.Height (Microsoft.UI.Windowing) Свойство AppWindowTitleBar.Height
(Windows.ApplicationModel.Core) Свойство CoreApplicationViewTitleBar.SystemOverlayLeftInset (Microsoft.UI.Windowing) Свойство AppWindowTitleBar.LeftInset
(Windows.ApplicationModel.Core) Свойство CoreApplicationViewTitleBar.SystemOverlayRightInset (Microsoft.UI.Windowing) Свойство AppWindowTitleBar.RightInset
Пространство имен Windows.ApplicationModel.Resources.Core Microsoft.Windows.ApplicationModel.Resources. См. статью Переход с MRT на MRT Core.
Метод (Windows.ApplicationModel.Resources.Core) ResourceContext.GetForCurrentView (Microsoft.Windows.ApplicationModel.Resources) ResourceManager.CreateResourceContext . См . статьи ResourceContext.GetForCurrentView и ResourceContext.GetForViewIndependentUse.
Метод (Windows.ApplicationModel.Resources.Core) ResourceContext.GetForViewIndependentUse (Microsoft.Windows.ApplicationModel.Resources) ResourceManager.CreateResourceContext . См . статьи ResourceContext.GetForCurrentView и ResourceContext.GetForViewIndependentUse.
(Свойство Windows.ApplicationModel.Resources.Core) ResourceManager.Current Создайте новый объект ResourceManager (Microsoft.Windows.ApplicationModel.Resources). См. раздел Класс ResourceManager.
(Windows.ApplicationModel.Resources.Core) Событие ResourceQualifierObservableMap.MapChanged Обнаруживайте изменения среды самостоятельно. См . раздел Изменение значения квалификатора ресурсов.
(Windows.Graphics.Printing) Класс PrintManager Не поддерживается в Windows App SDK 1.0.
Класс CameraCaptureUI (Windows.Media.Capture) Не поддерживается в Windows App SDK 1.0.
(Windows.Security.Authentication.Web) Класс WebAuthenticationBroker Не поддерживается в Windows App SDK 1.0.
(Windows.Storage.Pickers) Классы FileOpenPicker, FileSavePicker и FolderPicker Поддерживается, но необходимо использовать интерфейс IInitializeWithWindow . См . статью MessageDialog и Средства выбора.
(Windows.System.Display) Класс DisplayRequest Не поддерживается в Windows App SDK 1.0.
Пространство имен Windows.UI.Composition Пространство имен Microsoft.UI.Composition
(Windows.UI.Core) Класс CoreDispatcher (Microsoft.UI.Dispatching) Класс DispatcherQueue . См. раздел Изменение CoreDispatcher на DispatcherQueue.
(Windows.UI.Core) Метод CoreDispatcher.RunAsync Метод (Microsoft.UI.Dispatching) DispatcherQueue.TryEnqueue . См. раздел Изменение RunAsync на TryEnqueue.
(Windows.UI.Core) Класс CoreWindow (Microsoft.UI.Windowing) Класс AppWindow . См. раздел Миграция функциональных возможностей окон.
(Windows.UI.Core) Свойство CoreWindow.Bounds (обычно отображается в C# как CoreWindow.GetForCurrentThread.Bounds) (Microsoft.UI.Windowing) Свойство AppWindow.Size
(Windows.UI.Core) Метод CoreWindow.GetForCurrentThread (Microsoft.UI.Windowing) Метод AppWindow.Create
(Windows.UI.Core) Метод CoreWindow.Activate (Microsoft.UI.Windowing) Метод AppWindow.Show
(Windows.UI.Core) Свойство CoreWindow.Dispatcher (Microsoft.UI.Xaml) Свойство Window.DispatcherQueue . См. раздел Изменение CoreWindow.Dispatcher на Window.DispatcherQueue.
(Windows.UI.Core) Событие CoreWindow.SizeChanged (Microsoft.UI.Windowing) Метод AppWindowChangedEventArgs.DidSizeChange
(Windows.UI.Core) Класс SystemNavigationManager (глобальная кнопка "Назад") Не поддерживается. Реализуйте кнопку "Назад" в собственном пользовательском интерфейсе. См. Windows App SDK миграции примера приложения UWP PhotoLab (C#).
(Windows.UI.Core) Класс WindowSizeChangedEventArgs (Microsoft.UI.Xaml) Класс WindowSizeChangedEventArgs ; например, в обработчике для (Microsoft.UI.Xaml) Window.SizeChanged.
(Windows.UI.Popups) Класс MessageDialog Поддерживается, но необходимо использовать интерфейс IInitializeWithWindow . См . статью MessageDialog и Средства выбора.
(Windows.UI.Text.Core) Класс CoreTextServicesManager Поддерживается только в Windows 11.
(Windows.UI.ViewManagement) Класс ApplicationView (Microsoft.UI.Windowing) Класс AppWindow
(Windows.UI.ViewManagement) Свойство ApplicationView.Title (Microsoft.UI.Windowing) Свойство AppWindow.Title
(Windows.UI.ViewManagement) Метод ApplicationView.TryConsolidateAsync (Microsoft.UI.Windowing) Метод AppWindow.Destroy
(Windows.UI.ViewManagement) Метод ApplicationView.TryEnterFullScreenMode (Microsoft.UI.Windowing) Метод AppWindow.SetPresenter с AppWindowPresenterKind.FullScreen
(Windows.UI.ViewManagement) Метод ApplicationView.TryEnterViewModeAsync с ApplicationViewMode.CompactOverlay (Microsoft.UI.Windowing) Метод AppWindow.SetPresenter с AppWindowPresenterKind.CompactOverlay
(Windows.UI.ViewManagement) Метод ApplicationView.TryResizeView (Microsoft.UI.Windowing) Метод AppWindow.Resize
(Windows.UI.ViewManagement) Поле ApplicationViewMode.CompactOverlay (Microsoft.UI.Windowing) Поле AppWindowPresenterKind.CompactOverlay
(Windows.UI.ViewManagement) Класс ApplicationViewTitleBar (Microsoft.UI.Windowing) Класс AppWindowTitleBar
(Windows.UI.ViewManagement) ApplicationViewWindowingMode.FullScreen (Microsoft.UI.Windowing) AppWindowPresenterKind.FullScreen
(Windows.UI.WindowManagement) Класс AppWindow (Microsoft.UI.Windowing) Класс AppWindow
(Windows.UI.WindowManagement) Событие AppWindow.Changed (Microsoft.UI.Windowing) Событие Microsoft.UI.Windowing.AppWindow.Changed
(Windows.UI.WindowManagement) Метод AppWindow.CloseAsync (Microsoft.UI.Windowing) Метод AppWindow.Destroy
(Windows.UI.WindowManagement) Метод AppWindow.GetPlacement (Microsoft.UI.Windowing) Свойство AppWindow.Position
(Windows.UI.WindowManagement) Методы Appwindow.RequestMoveXxx (Microsoft.UI.Windowing) Метод AppWindow.Move
(Windows.UI.WindowManagement) Метод AppWindow.RequestSize (Microsoft.UI.Windowing) Метод AppWindow.Resize
(Windows.UI.WindowManagement) Свойство AppWindow.Title (Microsoft.UI.Windowing) Свойство AppWindow.Title
(Windows.UI.WindowManagement) Метод AppWindow.TryCreateAsync (Microsoft.UI.Windowing) Метод AppWindow.Create
(Windows.UI.WindowManagement) Метод AppWindow.TryShowAsync (Microsoft.UI.Windowing) Метод AppWindow.Show
(Windows.UI.WindowManagement) Метод AppWindowChangedEventArgs.DidSizeChange (Microsoft.UI.Windowing) Метод AppWindowChangedEventArgs.DidSizeChange
(Windows.UI.WindowManagement) Свойство AppWindowPlacement.Size (Microsoft.UI.Windowing) Свойство AppWindow.Size
(Windows.UI.WindowManagement) AppWindowPresentationKind.CompactOverlay , поле (Microsoft.UI.Windowing) Поле AppWindowPresenterKind.CompactOverlay
(Windows.UI.WindowManagement) AppWindowPresentationKind.FullScreen (Microsoft.UI.Windowing) AppWindowPresenterKind.FullScreen
(Windows.UI.WindowManagement) Метод AppWindowPresenter.RequestPresentation (Microsoft.UI.Windowing) Метод AppWindow.SetPresenter
(Windows.UI.WindowManagement) Класс AppWindowTitleBar (Microsoft.UI.Windowing) Класс AppWindowTitleBar
(Windows.UI.WindowManagement) AppWindowTitleBar.GetPreferredVisibility Нет прямого сопоставления 1:1 с API Windows App SDK
(Windows.UI.WindowManagement) AppWindowTitleBar.GetTitleBarOcclusions (Microsoft.UI.Windowing) AppWindowTitleBar.LeftInset и RightInset в сочетании с Height предоставляют одинаковые сведения.
(Windows.UI.WindowManagement) AppWindowTitleBar.SetPreferredVisibility Нет прямого сопоставления 1:1 с API Windows App SDK
(Windows.UI.WindowManagement) Свойство AppWindowTitleBarOcclusion (Microsoft.UI.Windowing) AppWindowTitleBar.LeftInset и RightInset в сочетании с Height предоставляют одинаковые сведения.
(Windows.UI.WindowManagement) AppWindowTitleBarVisibility Нет прямого сопоставления 1:1 с API Windows App SDK
Пространство имен Windows.UI.Xaml Пространство имен Microsoft.UI.Xaml
(Windows.UI.Xaml) Метод Application.OnActivated (обычно отображается в C# как App.OnActivated) См . раздел OnActivated, OnBackgroundActivated и другие методы обработки активации.
(Windows.UI.Xaml) Метод Application.OnBackgroundActivated (обычно отображается в C# как App.OnBackgroundActivated) См . раздел OnActivated, OnBackgroundActivated и другие методы обработки активации.
(Windows.UI.Xaml) Метод Application.OnCachedFileUpdaterActivated (обычно отображается в C# как App.OnCachedFileUpdaterActivated) См . раздел OnActivated, OnBackgroundActivated и другие методы обработки активации.
(Windows.UI.Xaml) Метод Application.OnFileActivated (обычно отображается в C# как App.OnFileActivated) См . статьи Сопоставление типов файлов и Методы OnActivated, OnBackgroundActivated и другие методы обработки активации.
(Windows.UI.Xaml) Метод Application.OnFileOpenPickerActivated (обычно отображается в C# как App.OnFileOpenPickerActivated) См . раздел OnActivated, OnBackgroundActivated и другие методы обработки активации.
(Windows.UI.Xaml) Метод Application.OnFileSavePickerActivated (обычно отображается в C# как App.OnFileSavePickerActivated) См . раздел OnActivated, OnBackgroundActivated и другие методы обработки активации.
(Windows.UI.Xaml) Метод Application.OnSearchActivated (обычно отображается в C# как App.OnSearchActivated) См . раздел OnActivated, OnBackgroundActivated и другие методы обработки активации.
(Windows.UI.Xaml) Метод Application.OnShareTargetActivated (обычно отображается в C# как App.OnShareTargetActivated) См . раздел OnActivated, OnBackgroundActivated и другие методы обработки активации.
(Windows.UI.Xaml) Свойство Window.Current Не рекомендуется и возвращает null. Дополнительные сведения см. в разделе Изменение параметра Window.Current на App.Window.
(Windows.UI.Xaml) Свойство Window.Dispatcher (обычно записывается на C# как Window.Current.Dispatcher) (Microsoft.UI.Xaml) Свойство Window.DispatcherQueue
(Windows.UI.Xaml.Controls) Класс ContentDialog (Microsoft.UI.Xaml.Controls) ContentDialog поддерживается, но необходимо задать его свойство XamlRoot . См . раздел ContentDialog и Всплывающее окно.
(Windows.UI.Xaml.Controls) Класс InkCanvas Не поддерживается в Windows App SDK 1.0.
(Windows.UI.Xaml.Controls) Класс MediaElement Не поддерживается в Windows App SDK 1.0.
(Windows.UI.Xaml.Controls.Maps) Класс MapControl Не поддерживается в Windows App SDK 1.0.
(Windows.UI.Xaml.Controls.Primitives) Класс Popup (Microsoft.UI.Xaml.Controls.Primitives) Поддерживается всплывающее окно , но необходимо задать его свойство XamlRoot . См . раздел ContentDialog и Всплывающее окно.
(Windows.UI.Xaml.Media) Свойство AcrylicBrush.BackgroundSource В Windows App SDK (Microsoft.UI.Xaml.Media) AcrylicBrush всегда выполняет выборку из содержимого приложения. См. свойство AcrylicBrush.BackgroundSource.
C++/WinRT. co_await winrt.resume_foreground(this->Dispatcher()); См . раздел Миграция winrt.resume_foreground

Сторонние библиотеки

В этом разделе описаны различные библиотеки, поддерживаемые в UWP, которые необходимо изменить при использовании WinUI 3.

UWP Пакет SDK для приложений Windows
OneDrive SDK Пакет SDK Microsoft Graph