Delen via


.NET-koppelingen van WinRT-typen in C#/WinRT

Dit artikel bevat de toewijzingen die C#/WinRT maakt tussen Windows Runtime-typen (WinRT) en .NET-typen in desktop-apps die gericht zijn op .NET 6 (of hoger). In deze apps wordt in Visual Studio IntelliSense het .NET-type weergegeven in plaats van het Type Windows Runtime. Als een Windows Runtime-methode bijvoorbeeld een parameter van het type IVector<tekenreeks>gebruikt, toont IntelliSense een parameter van het type IList<tekenreeks>. Op dezelfde manier gebruikt u in een WinRT-onderdeel dat is gemaakt met C#/WinRT het .NET-type in ledenhandtekeningen. Wanneer u C#/WinRT gebruikt om een Windows Runtime-onderdeel te genereren, wordt het .NET-type omgezet in het bijbehorende WinRT-type.

De aangepaste C#/WinRT-typetoewijzingen worden gecategoriseerd op typen in de Windows SDK of in WinUI 3 (WinUI 3 maakt deel uit van de Windows App SDK-). De WinRT-typen voor Windows SDK-toewijzingen bevinden zich onder de Windows.* naamruimten, en de WinRT-typen voor WinUI 3-toewijzingen bevinden zich onder de Microsoft.UI.Xaml.* naamruimten. Er zijn twee redenen voor aangepaste typetoewijzingen die C#/WinRT maakt voor WinRT-typen:

  • WinRT-typen die worden gemapt naar .NET-typen met een andere naam en/of naamruimte. Deze aangepaste toewijzingen zijn bedoeld voor het toewijzen van WinRT-typen aan bestaande equivalente .NET-typen. Er zijn ook gevallen waarin de toewijzing is toegewezen aan een ander type (bijvoorbeeld een waardetype dat is toegewezen aan een klassetype).

  • WinRT-typen die overeenkomen met .NET-typen met dezelfde naam en naamruimte. Deze aangepaste toewijzingen zijn meestal bedoeld voor redenen van prestaties of verbeteringen en worden rechtstreeks in C# geïmplementeerd. De meeste typen met dezelfde naamruimtenaam en typenaam in WinRT en .NET zijn structuren (of typen die zijn gekoppeld aan structuren, zoals opsommingen). In WinRT hebben structuren geen andere leden dan velden en vereisen hulptypen, die .NET verbergt. De .NET-versies van deze structuren hebben eigenschappen en methoden die de functionaliteit van de verborgen helpertypen bieden (bijvoorbeeld Windows.UI.Color).

Notitie

Zie voor een lijst met toewijzingen tussen WinRT- en .NET-typen in de context van UWP-apps de .NET-toewijzingen van WinRT-typen in UWP bij en.

Koppelingen voor WinRT-typen in de Windows SDK

Typen met een andere naam en/of naamruimte

WinRT-type/naamruimte .NET-type/naamruimte
DateTime (Windows.Foundation) DateTimeOffset (systeem)
EventHandler<T> (Windows.Foundation) EventHandler<T> (Systeem)
EventRegistrationToken (Windows.Foundation) EventRegistrationToken (WinRT)
HResult (Windows.Foundation) Uitzondering (systeem)
IClosable (Windows.Foundation) IDisposable (systeem)
IReference<T> (Windows.Foundation) Nullable<T> (Systeem)
TimeSpan (Windows.Foundation) Tijdspanne (systeem)
Uri (Windows.Foundation) URI (systeem)
IIterable<T> (Windows.Foundation.Collections) IEnumerable<T> (System.Collections.Generic)
IIterator<T> (Windows.Foundation.Collections) IEnumerator<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)
IVector<T> (Windows.Foundation.Collections) IList<T> (System.Collections.Generic)
IVectorView<T> (Windows.Foundation.Collections) IReadOnlyList<T> (System.Collections.Generic)
AttributeTargets (Windows.Foundation.Metadata) AttributeTargets (systeem)
AttributeUsageAttribute (onderdeel van Windows.Foundation.Metadata) AttributeUsageAttribute (systeem)
Matrix3x2 (Windows.Foundation.Numerics) Matrix3x2 (System.Numerics)
Matrix4x4 (Windows.Foundation.Numerics) Matrix4x4 (System.Numerics)
Vlak (Windows.Foundation.Numerics) Vlak (System.Numerics)
Quaternion (Windows.Foundation.Numerics) Quaternion (System.Numerics)
Vector2 (Windows.Foundation.Numerics) Vector2 (System.Numerics)
Vector3 (Windows.Foundation.Numerics) Vector3 (System.Numerics)
Vector4 (Windows.Foundation.Numerics) Vector4 (System.Numerics)
IBindableIterable (Windows.UI.Xaml.Interop) IEnumerable (System.Collections)
IBindableVector (Windows.UI.Xaml.Interop) IList (System.Collections)
TypeName (Windows.UI.Xaml.Interop) Type (systeem)

Typen met dezelfde naam en naamruimte

Type Namespace
IPropertyValue Windows.Foundation
IReferenceArray<T> Windows.Foundation
Punt Windows.Foundation
Rect Windows.Foundation
Grootte Windows.Foundation
Kleur Windows.UI
TypeKind Windows.UI.Xaml.Interop

Toewijzingen voor WinRT-typen in WinUI

Typen met een andere naam en/of naamruimte

WinRT-type/naamruimte .NET-type/naamruimte
INotifyCollectionChanged (Microsoft.UI.Xaml.Data) INotifyCollectionChanged (System.Collections.Specialized)
NotifyCollectionChangedEventHandler (Microsoft.UI.Xaml.Data) NotifyCollectionChangedEventHandler (System.Collections.Specialized)
NotifyCollectionChangedEventArgs (Microsoft.UI.Xaml.Data) NotifyCollectionChangedEventArgs (System.Collections.Specialized)
NotifyCollectionChangedAction (Microsoft.UI.Xaml.Data) NotifyCollectionChangedAction (System.Collections.Specialized)
DataErrorsChangedEventArgs (Microsoft.UI.Xaml.Data) DataErrorsChangedEventArgs (System.ComponentModel)
INotifyDataErrorInfo (Microsoft.UI.Xaml.Data) INotifyDataErrorInfo (System.ComponentModel)
INotifyPropertyChanged (Microsoft.UI.Xaml.Data) INotifyPropertyChanged (System.ComponentModel)
PropertyChangedEventHandler (Microsoft.UI.Xaml.Data) PropertyChangedEventHandler (System.ComponentModel)
PropertyChangedEventArgs (Microsoft.UI.Xaml.Data) PropertyChangedEventArgs (System.ComponentModel)
ICommand (Microsoft.UI.Xaml.Input) ICommand (System.Windows.Input)
IXamlServiceProvider (Microsoft.UI.Xaml) IServiceProvider (systeem)

Typen met dezelfde naam en naamruimte

Soort Namespace
CornerRadius Microsoft.UI.Xaml
Duur Microsoft.UI.Xaml
DuurType Microsoft.UI.Xaml
GridLength Microsoft.UI.Xaml
Grid-eenheidstype Microsoft.UI.Xaml
Dikte Microsoft.UI.Xaml
GeneratorPosition Microsoft.UI.Xaml.Controls.Primitives
Matrix Microsoft.UI.Xaml.Media
KeyTime Microsoft.UI.Xaml.Media.Animation
HerhaalGedrag Microsoft.UI.Xaml.Media.Animation
RepeatBehaviorType Microsoft.UI.Xaml.Media.Animation
Matrix3D (Microsoft.UI.Xaml.Media.Media3D