TypeName Struktur

Definition

Ersetzt System.Type , sodass von anderen APIs gemeldete Typinformationen keine Abhängigkeit von der Common Language Runtime (CLR) aufweisen. Diese Struktur wird von Eigenschaften wie UnderlyingType und Type als Wert verwendet.

.NETTO Bei der Programmierung mit .NET ist dieser Typ ausgeblendet, und Sie sollten den Typ System.Type verwenden. Alle Windows-Runtime-APIs, die einen TypeName für die rohen IDL-Signaturen verwenden, verwenden stattdessen System.Type-Werte, wenn Sie die API mit .NET-Code verwenden.

C++/WinRT Sie können die Hilfsfunktion winrt::xaml_typename<T>() verwenden, um ein TypeName-Objekt zu erstellen. Weitere Informationen und ein Codebeispiel finden Sie unter winrt::xaml_typename Funktionsvorlage .

public value class TypeName
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
struct TypeName
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
public struct Type
Public Structure Type
Vererbung
TypeName
Attribute

Windows-Anforderungen

Gerätefamilie
Windows 10 (eingeführt in 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (eingeführt in v1.0)

Hinweise

Projektion und Elemente von TypeName

Wenn Sie Visual C++-Komponentenerweiterungen (C++/CX) verwenden, sind Name und Kind Lese-/Schreibeigenschaften, keine Felder. Diese Definition der Struktur wird von platform.winmd als Teil des Erweiterungsverhaltens bereitgestellt.

Wenn Sie mit C++ mithilfe der Windows-Runtime Vorlagenbibliothek (WRL) programmieren, sind Name und Kind Felder.

Felder

Kind

Ein TypeKind-Wert , der grundlegende Anleitungen zum Ursprung des Typs enthält.

Name

Der Name des Typs. Je nach Wert von Kind (siehe unten) kann Name eine der folgenden Elemente enthalten.

  • Wenn Kind auf TypeKind::Custom festgelegt ist, ist der Inhalt von Name nicht angegeben und sprachprojektiv (im Fall von C# ist der Wert ein vollqualifizierter Name).
  • Wenn Kind auf TypeKind::Metadata festgelegt ist, enthält Name den Windows-Runtime Klassennamen, z. B. "Windows.UI.Xaml.Controls.Button".
  • Wenn Kind auf TypeKind::P rimitive festgelegt ist, enthält Name einen primitiven Namen, z. B. "Int32".

Gilt für:

Weitere Informationen