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