本文列出了 .NET 在以托管代码编写的通用 Windows 平台 (UWP) 应用的 Windows 运行时 (WinRT) 类型和 .NET 类型之间进行的映射。 在这些应用中,Visual Studio IntelliSense 显示 .NET 类型而不是 WinRT 类型。 例如,如果 WinRT 方法采用类型 IVector<string> 的参数,IntelliSense 将显示类型 IList<string> 的参数。 同样,在使用托管代码编写的 Windows 运行时组件中,你将使用成员签名中的 .NET 类型。 当 Windows 运行时元数据导出工具 (Winmdexp.exe) 生成 Windows 运行时组件时,.NET 类型将转换为相应的 WinRT 类型。
在 WinRT 和 .NET 中,大多数具有相同的命名空间名称和类型名称的类型都是结构(或者与结构关联的类型,例如枚举)。 在 WinRT 中,结构没有字段以外的成员,并且需要帮助器类型(.NET 会隐藏这些类型)。 这些 .NET 版本的结构具有可提供隐藏帮助程序类型的功能的属性和方法。
注意
有关面向 .NET 和使用 C#/WinRT 的桌面应用的上下文中的 WinRT 和 .NET 类型之间的映射列表,请参阅 C#/WinRT 中 WinRT 类型的 .NET 映射。
映射到具有相同名称和命名空间的 .NET 类型的 WinRT 类型
在 .NET 程序集 System.ObjectModel.dll 中
| 命名空间 | 类型 |
|---|---|
| Windows.UI.Xaml.Input | ICommand |
在 .NET 程序集 System.Runtime.WindowsRuntime.dll 中
| 命名空间 | 类型 |
|---|---|
| Windows.Foundation | 点 |
| Windows.Foundation | Rect |
| Windows.Foundation | 大小 |
| Windows.UI | Color |
在 .NET 程序集 System.Runtime.WindowsRuntime.UI.Xaml.dll 中
| 命名空间 | 类型 |
|---|---|
| Windows.UI.Xaml | CornerRadius |
| Windows.UI.Xaml | 持续时间 |
| Windows.UI.Xaml | DurationType |
| Windows.UI.Xaml | GridLength |
| Windows.UI.Xaml | GridUnitType |
| Windows.UI.Xaml | Thickness |
| Windows.UI.Xaml.Controls.Primitives | GeneratorPosition |
| Windows.UI.Xaml.Media | 矩阵 |
| Windows.UI.Xaml.Media.Animation | KeyTime |
| Windows.UI.Xaml.Media.Animation | RepeatBehavior |
| Windows.UI.Xaml.Media.Animation | RepeatBehaviorType |
| Windows.UI.Xaml.Media.Media3D | Matrix3D |
映射到具有不同名称和/或命名空间的 .NET 类型的 WinRT 类型
在 .NET 程序集 System.ObjectModel.dll 中
| WinRT 类型/命名空间 | .NET 类型/命名空间 |
|---|---|
| INotifyCollectionChanged (Windows.UI.Xaml.Interop) | INotifyCollectionChanged (System.Collections.Specialized) |
| NotifyCollectionChangedEventHandler (Windows.UI.Xaml.Interop) | NotifyCollectionChangedEventHandler (System.Collections.Specialized) |
| NotifyCollectionChangedEventArgs (Windows.UI.Xaml.Interop) | NotifyCollectionChangedEventArgs (System.Collections.Specialized) |
| NotifyCollectionChangedAction (Windows.UI.Xaml.Interop) | NotifyCollectionChangedAction (System.Collections.Specialized) |
| INotifyPropertyChanged (Windows.UI.Xaml.Data) | INotifyPropertyChanged (System.ComponentModel) |
| PropertyChangedEventHandler (Windows.UI.Xaml.Data) | PropertyChangedEventHandler (System.ComponentModel) |
| PropertyChangedEventArgs (Windows.UI.Xaml.Data) | PropertyChangedEventArgs (System.ComponentModel) |
在 .NET 程序集 System.Runtime.dll 中
| WinRT 类型/命名空间 | .NET 类型/命名空间 |
|---|---|
| AttributeUsageAttribute (Windows.Foundation.Metadata) | AttributeUsageAttribute (System) |
| AttributeTargets (Windows.Foundation.Metadata) | AttributeTargets (System) |
| DateTime (Windows.Foundation) | DateTimeOffset (System) |
| EventHandler<T> (Windows.Foundation) | EventHandler<T> (System) |
| HResult (Windows.Foundation) | Exception (System) |
| IReference<T> (Windows.Foundation) | Nullable<T> (System) |
| TimeSpan (Windows.Foundation) | TimeSpan (System) |
| Uri (Windows.Foundation) | Uri (System) |
| IClosable (Windows.Foundation) | IDisposable (System) |
| IIterable<T> (Windows.Foundation.Collections) | IEnumerable<T> (System.Collections.Generic) |
| IVector<T> (Windows.Foundation.Collections) | IList<T> (System.Collections.Generic) |
| IVectorView<T> (Windows.Foundation.Collections) | IReadOnlyList<T> (System.Collections.Generic) |
| IMap<K,V> (Windows.Foundation.Collections) | IDictionary<TKey,TValue> (System.Collections.Generic) |
| IMapView<K,V> (Windows.Foundation.Collections) | IReadOnlyDictionary<TKey,TValue> (System.Collections.Generic) |
| IKeyValuePair<K,V> (Windows.Foundation.Collections) | KeyValuePair<TKey,TValue> (System.Collections.Generic) |
| IBindableIterable (Windows.UI.Xaml.Interop) | IEnumerable (System.Collections) |
| IBindableVector (Windows.UI.Xaml.Interop) | IList (System.Collections) |
| TypeName (Windows.UI.Xaml.Interop) | Type (System) |
在 .NET 程序集 System.Runtime.InteropServices.WindowsRuntime.dll 中
| WinRT 类型/命名空间 | .NET 类型/命名空间 |
|---|---|
| EventRegistrationToken (Windows.Foundation) | EventRegistrationToken (System.Runtime.InteropServices.WindowsRuntime) |