将 UWP API 和库映射到 Windows 应用 SDK
本主题提供了 UWP API 与其 Windows 应用 SDK 等效项的映射。 在某些情况下,映射不是一对一的。对于命名空间或类,任何一个平台都可能比另一个平台具有更多或更少的功能。
这两个平台之间的命名空间和类(包括 UI 控件)的名称存在差异。 在许多情况下,只需更改命名空间名称,就可以编译代码。 有时,类或 API 名称以及命名空间名称已发生更改。 有时,映射会处理较多工作,在极少数情况下,则需要更改方法。
如何使用该表。 首先,搜索你正在使用的类成员的姓名。 只要映射比简单的类名或命名空间名称更改更复杂,就会列出成员。 如果未列出你的成员,请搜索你正在使用的类的名称。 只要映射比简单地更改命名空间名称更复杂,就会列出类(有关具体指导,请参阅功能区指南)。 如果你的类未列出,则该映射只是命名空间的更改。 因此,找到你的类的命名空间名称后,你将找到等效的 Windows 应用 SDK 命名空间名称。 你的类将位于该命名空间中。 如果你的命名空间未列出,则其名称并未更改。
UWP | Windows 应用 SDK |
---|---|
(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 属性 | 创建一个新的 ( Microsoft.Windows.ApplicationModel.Resources ) ResourceManager 对象。 请参阅 ResourceManager 类。 |
(Windows.ApplicationModel.Resources.Core) ResourceQualifierObservableMap.MapChanged 事件 | 自己检测环境变化。 请参阅资源限定符值更改。 |
(Windows.Graphics.Printing) PrintManager 类 | Windows 应用 SDK 1.0 不支持。 |
(Windows.Media.Capture) CameraCaptureUI 类 | Windows 应用 SDK 1.0 不支持。 |
(Windows.Security.Authentication.Web) WebAuthenticationBroker 类 | Windows 应用 SDK 1.0 不支持。 |
(Windows.Storage.Pickers) FileOpenPicker、FileSavePicker 和 FolderPicker 类 | 支持,但必须使用 IInitializeWithWindow 接口。 请参阅 MessageDialog 和 Pickers。 |
(Windows.System.Display) DisplayRequest 类 | Windows 应用 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 方法 | 没有直接 1:1 映射到 Windows 应用 SDK API。 使用 XAML 时,可以获取 Window.AppWindow 以获取与 XAML 窗口关联的 AppWindow,但如果应用想要从不具有访问权限的某个位置访问它,则需要缓存 Window 或 AppWindow。 建议缓存并公开应用对象上的窗口。 |
(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 类(全局后退按钮)global back button) | 不支持。 在你自己的 UI 中实现后退按钮。 请参阅 UWP PhotoLab 示例应用 (C#) 的 Windows 应用 SDK 迁移。 |
(Windows.UI.Core) WindowSizeChangedEventArgs 类 | (Microsoft.UI.Xaml) WindowSizeChangedEventArgs 类,例如,在 (Microsoft.UI.Xaml) Window.SizeChanged 的处理程序中。 |
(Windows.UI.Popups) MessageDialog 类 | 支持,但必须使用 IInitializeWithWindow 接口。 请参阅 MessageDialog 和 Pickers。 |
(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 field |
(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 field |
(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 映射到 Windows 应用 SDK API |
(Windows.UI.WindowManagement) AppWindowTitleBar.GetTitleBarOcclusions | (Microsoft.UI.Windowing) AppWindowTitleBar.LeftInset 和 RightInset(与 Height 结合)提供相同的信息。 |
(Windows.UI.WindowManagement) AppWindowTitleBar.SetPreferredVisibility | 没有直接 1:1 映射到 Windows 应用 SDK API |
(Windows.UI.WindowManagement) AppWindowTitleBarOcclusion 属性 | (Microsoft.UI.Windowing) AppWindowTitleBar.LeftInset 和 RightInset(与 Height 结合)提供相同的信息。 |
(Windows.UI.WindowManagement) AppWindowTitleBarVisibility | 没有直接 1:1 映射到 Windows 应用 SDK API |
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 和 Popup。 |
(Windows.UI.Xaml.Controls) InkCanvas 类 | Windows 应用 SDK 1.0 不支持。 |
(Windows.UI.Xaml.Controls) MediaElement 类 | Windows 应用 SDK 1.0 不支持。 |
(Windows.UI.Xaml.Controls.Maps) MapControl 类 | (Microsoft.UI.Xaml.Controls) MapControl 类 |
(Windows.UI.Xaml.Controls.Primitives) Popup 类 | 支持 (Microsoft.UI.Xaml.Controls.Primitives) Popup,但必须设置其 XamlRoot 属性。 请参阅 ContentDialog 和 Popup。 |
(Windows.UI.Xaml.Media) AcrylicBrush.BackgroundSource 属性 | 在 Windows 应用 SDK 中,(Microsoft.UI.Xaml.Media ) AcrylicBrush 总是从应用内容中采样。 请参阅 AcrylicBrush.BackgroundSource 属性。 |
C++/WinRT。 co_await winrt.resume_foreground(this->Dispatcher()); |
请参阅 Migrate winrt.resume_foreground |
第三方库
本节介绍 UWP 中支持的各种库,在使用 WinUI 3 时需要更改。
UWP | Windows 应用 SDK |
---|---|
OneDrive SDK | Microsoft Graph SDK |