TypeDescriptor Klasse

Definition

Stellt Informationen zu den Merkmalen für eine Komponente bereit, z.B. zu Attributen, Eigenschaften und Ereignissen. Diese Klasse kann nicht vererbt werden.

public ref class TypeDescriptor sealed
public sealed class TypeDescriptor
type TypeDescriptor = class
Public NotInheritable Class TypeDescriptor
Vererbung
TypeDescriptor

Hinweise

Die .NET Framework bietet zwei Möglichkeiten, auf Metadaten für einen Typ zuzugreifen: die im System.Reflection Namespace bereitgestellte Reflektions-API und die TypeDescriptor -Klasse. Reflektion ist ein allgemeiner Mechanismus, der für alle Typen verfügbar ist, da seine Grundlage in der GetType Methode der Stammklasse Object festgelegt ist. Die Informationen, die für einen Typ zurückgegeben werden, sind nicht erweiterbar, da sie nach der Kompilierung des Zieltyps nicht geändert werden können. Weitere Informationen finden Sie in den Themen in Reflektion.

Im Gegensatz dazu TypeDescriptor ist ein erweiterbarer Überprüfungsmechanismus für Komponenten: die Klassen, die die IComponent Schnittstelle implementieren. Im Gegensatz zur Reflektion wird nicht auf Methoden überprüft. TypeDescriptor kann dynamisch um mehrere Dienste erweitert werden, die über die Zielkomponente verfügbar sind Site. In der folgenden Tabelle sind diese Dienste aufgeführt.

Dienstname Beschreibung
IExtenderProvider Ermöglicht einer anderen Klasse, z ToolTip. B. , zusätzliche Eigenschaften für eine Komponente bereitzustellen.
ITypeDescriptorFilterService Ermöglicht einem anderen Objekt das Ändern der Standardmetadaten, die von einer Komponente verfügbar gemacht werden.
ICustomTypeDescriptor Ermöglicht es einer Klasse, ihre eigenen Metadaten vollständig und dynamisch anzugeben, indem der Standardprüfmechanismus von TypeDescriptorersetzt wird.

Die von bereitgestellte TypeDescriptor Erweiterbarkeit ermöglicht es, dass sich die Entwurfszeitdarstellung einer Komponente von ihrer tatsächlichen Laufzeitdarstellung unterscheidet, was für die Erstellung einer Entwurfszeitinfrastruktur nützlich ist TypeDescriptor .

Alle Methoden in TypeDescriptor sind static. Sie können keine Instanz dieser Klasse erstellen, und diese Klasse kann nicht geerbt werden.

Sie können Eigenschaften- und Ereigniswerte auf zwei verschiedene Arten festlegen: Geben Sie sie in der Komponentenklasse an oder ändern Sie sie zur Entwurfszeit. Da Sie diese Werte auf zwei Arten festlegen können, nehmen die überladenen Methoden von TypeDescriptor zwei verschiedene Typen von Parametern an: einen Klassentyp oder eine Objektinstanz.

Wenn Sie auf Informationen zugreifen TypeDescriptor möchten und sie über eine Instanz des -Objekts verfügen, verwenden Sie die -Methode, die eine Komponente aufruft. Verwenden Sie die -Methode, die den Klassentyp nur aufruft, wenn Sie keine Instanz des -Objekts haben.

Eigenschaften und Ereignisse werden zur Geschwindigkeit zwischengespeichert TypeDescriptor . In der Regel sind sie für die Lebensdauer eines Objekts konstant. Extenderanbieter und Designer können jedoch den Satz von Eigenschaften für ein Objekt ändern. Wenn dies der Fall ist, muss die Refresh -Methode aufgerufen werden, um den Cache zu aktualisieren.

Eigenschaften

ComNativeDescriptorHandler
Veraltet.
Veraltet.
Veraltet.
Veraltet.

Ruft den Anbieter für COM-Typinformationen (Component Object Model) für die Zielkomponente ab oder legt diesen fest.

ComObjectType

Ruft den Typ des COM-Objekts (Component Object Model) ab, das durch die Zielkomponente dargestellt wird.

InterfaceType

Ruft einen Typ ab, der einen Typbeschreibungsanbieter für alle Schnittstellentypen darstellt.

Methoden

AddAttributes(Object, Attribute[])

Fügt Attribute auf Klassenebene zur Zielkomponenteninstanz hinzu.

AddAttributes(Type, Attribute[])

Fügt Attribute auf Klassenebene zum Zielkomponententyp hinzu.

AddEditorTable(Type, Hashtable)

Fügt eine Editor-Tabelle für den angegebenen Editor-Basistyp hinzu.

AddProvider(TypeDescriptionProvider, Object)

Fügt einen Typbeschreibungsanbieter für eine einzelne Instanz einer Komponente hinzu.

AddProvider(TypeDescriptionProvider, Type)

Fügt einen Typbeschreibungsanbieter für eine Komponentenklasse hinzu.

AddProviderTransparent(TypeDescriptionProvider, Object)

Fügt einen Typbeschreibungsanbieter für eine einzelne Instanz einer Komponente hinzu.

AddProviderTransparent(TypeDescriptionProvider, Type)

Fügt einen Typbeschreibungsanbieter für eine Komponentenklasse hinzu.

CreateAssociation(Object, Object)

Erstellt eine Primär-/Sekundär-Zuordnung zwischen zwei Objekten.

CreateDesigner(IComponent, Type)

Erstellt eine Instanz des angegebenen Designers, der der angegebenen Komponente zugeordnet ist, und des angegebenen Typs des Designers.

CreateEvent(Type, EventDescriptor, Attribute[])

Erstellt einen neuen Ereignisdeskriptor, der mit einem vorhandenen Ereignisdeskriptor identisch ist, wenn der vorhandene EventDescriptor übergeben wird.

CreateEvent(Type, String, Type, Attribute[])

Erstellt einen neuen Ereignisdeskriptor, der mit einem vorhandenen Ereignisdeskriptor identisch ist, indem die Deskriptorinformationen aus einem angegebenen Ereignis für einen Typ dynamisch erzeugt werden.

CreateInstance(IServiceProvider, Type, Type[], Object[])

Erstellt ein Objekt, das einen anderen Datentyp ersetzen kann.

CreateProperty(Type, PropertyDescriptor, Attribute[])

Erstellt einen neuen Eigenschaftendeskriptor aus einem vorhandenen Eigenschaftendeskriptor mithilfe des angegebenen vorhandenen PropertyDescriptor und Attributarrays.

CreateProperty(Type, String, Type, Attribute[])

Erstellt eine Eigenschaftsbeschreibung und bindet diese dynamisch an einen Typ. Dazu werden der angegebene Eigenschaftenname, der Typ und das Attributarray verwendet.

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetAssociation(Type, Object)

Gibt eine Instanz des Typs zurück, der dem angegebenen primären Objekt zugeordnet ist.

GetAttributes(Object)

Gibt eine Auflistung von Attributen für die angegebene Komponente zurück.

GetAttributes(Object, Boolean)

Gibt eine Auflistung von Attributen für die angegebene Komponente und einen booleschen Wert zurück, der angibt, dass ein Deskriptor mit benutzerdefiniertem Typ erstellt wurde.

GetAttributes(Type)

Gibt eine Auflistung von Attributen für den angegebenen Typ der Komponente zurück.

GetClassName(Object)

Gibt den Namen der Klasse für die angegebene Komponente zurück. Dazu wird der Standardtypdeskriptor verwendet.

GetClassName(Object, Boolean)

Gibt den Namen der Klasse für die angegebene Komponente mithilfe eines benutzerdefinierten Typdeskriptors zurück.

GetClassName(Type)

Gibt den Namen der Klasse für den angegebenen Typ zurück.

GetComponentName(Object)

Gibt den Namen der angegebenen Komponente zurück. Dazu wird der Standardtypdeskriptor verwendet.

GetComponentName(Object, Boolean)

Gibt den Namen der angegebenen Komponente zurück. Dazu wird ein benutzerdefinierter Typdeskriptor verwendet.

GetConverter(Object)

Gibt einen Typkonverter für den Typ der angegebenen Komponente zurück.

GetConverter(Object, Boolean)

Gibt einen Typkonverter für den Typ der angegebenen Komponente mit einem benutzerdefinierten Typdeskriptor zurück.

GetConverter(Type)

Gibt für den angegebenen Typ einen Typkonverter zurück.

GetDefaultEvent(Object)

Gibt das Standardereignis für die angegebene Komponente zurück.

GetDefaultEvent(Object, Boolean)

Gibt das Standardereignis für eine Komponente mit einem benutzerdefinierten Typdeskriptor zurück.

GetDefaultEvent(Type)

Gibt das Standardereignis für den angegebenen Typ der Komponente zurück.

GetDefaultProperty(Object)

Gibt die Standardeigenschaft für die angegebene Komponente zurück.

GetDefaultProperty(Object, Boolean)

Gibt die Standardeigenschaft für die angegebene Komponente mit einem benutzerdefinierten Typdeskriptor zurück.

GetDefaultProperty(Type)

Gibt die Standardeigenschaft für den angegebenen Komponententyp zurück.

GetEditor(Object, Type)

Ruft einen Editor mit dem angegebenen Basistyp für die angegebene Komponente ab.

GetEditor(Object, Type, Boolean)

Gibt einen Editor mit dem angegebenen Basistyp und mit einem benutzerdefinierten Typdeskriptor für die angegebene Komponente zurück.

GetEditor(Type, Type)

Gibt einen Editor mit dem angegebenen Basistyp für den angegebenen Typ zurück.

GetEvents(Object)

Gibt eine Auflistung von Ereignissen für die angegebene Komponente zurück.

GetEvents(Object, Attribute[])

Gibt die Auflistung der Ereignisse für eine angegebene Komponente zurück. Hierbei wird ein angegebenes Array von Attributen als Filter verwendet.

GetEvents(Object, Attribute[], Boolean)

Gibt die Auflistung von Ereignissen für eine angegebene Komponente zurück. Hierbei wird ein angegebenes Array von Attributen als Filter und ein benutzerdefinierter Typdeskriptor verwendet.

GetEvents(Object, Boolean)

Gibt die Auflistung von Eigenschaften für eine angegebene Komponente mit einem benutzerdefinierten Typdeskriptor zurück.

GetEvents(Type)

Gibt die Auflistung von Ereignissen für einen angegebenen Komponententyp zurück.

GetEvents(Type, Attribute[])

Gibt die Auflistung der Ereignisse für einen angegebenen Komponententyp zurück. Hierbei wird ein angegebenes Array von Attributen als Filter verwendet.

GetFullComponentName(Object)

Gibt den vollqualifizierten Namen der Komponente zurück.

GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetProperties(Object)

Gibt die Auflistung von Eigenschaften für eine angegebene Komponente zurück.

GetProperties(Object, Attribute[])

Gibt die Auflistung der Eigenschaften für eine angegebene Komponente zurück. Hierbei wird ein angegebenes Array von Attributen als Filter verwendet.

GetProperties(Object, Attribute[], Boolean)

Gibt die Auflistung der Eigenschaften für eine angegebene Komponente zurück. Hierbei wird ein angegebenes Array von Attributen als Filter sowie ein benutzerdefinierter Typdeskriptor verwendet.

GetProperties(Object, Boolean)

Gibt die Auflistung von Eigenschaften für eine angegebene Komponente zurück. Dazu wird der Standardtypdeskriptor verwendet.

GetProperties(Type)

Gibt die Auflistung von Eigenschaften für einen angegebenen Komponententyp zurück.

GetProperties(Type, Attribute[])

Gibt die Auflistung der Eigenschaften für einen angegebenen Komponententyp zurück. Hierbei wird ein angegebenes Array von Attributen als Filter verwendet.

GetProvider(Object)

Gibt den Typbeschreibungsanbieter für die angegebene Komponente zurück.

GetProvider(Type)

Gibt den Typbeschreibungsanbieter für den angegebenen Typ zurück.

GetReflectionType(Object)

Gibt einen Type zurück, der zum Durchführen der Reflektion bei Angabe eines Objekts verwendet werden kann.

GetReflectionType(Type)

Gibt einen Type zurück, der zum Durchführen der Reflektion bei Angabe eines Klassentyps verwendet werden kann.

GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
Refresh(Assembly)

Löscht die Eigenschaften und Ereignisse für die angegebene Assembly aus dem Cache.

Refresh(Module)

Löscht die Eigenschaften und Ereignisse für das angegebene Modul aus dem Cache.

Refresh(Object)

Löscht die Eigenschaften und Ereignisse für die angegebene Komponente aus dem Cache.

Refresh(Type)

Löscht die Eigenschaften und Ereignisse für die angegebene Art von Komponente aus dem Cache.

RemoveAssociation(Object, Object)

Entfernt eine Zuordnung zwischen zwei Objekten.

RemoveAssociations(Object)

Entfernt alle Zuordnungen für ein primäres Objekt.

RemoveProvider(TypeDescriptionProvider, Object)

Entfernt einen zuvor hinzugefügten Typbeschreibungsanbieter, der dem angegebenen Objekt zugeordnet ist.

RemoveProvider(TypeDescriptionProvider, Type)

Entfernt einen zuvor hinzugefügten Typbeschreibungsanbieter, der dem angegebenen Typ zugeordnet ist.

RemoveProviderTransparent(TypeDescriptionProvider, Object)

Entfernt einen zuvor hinzugefügten Typbeschreibungsanbieter, der dem angegebenen Objekt zugeordnet ist.

RemoveProviderTransparent(TypeDescriptionProvider, Type)

Entfernt einen zuvor hinzugefügten Typbeschreibungsanbieter, der dem angegebenen Typ zugeordnet ist.

SortDescriptorArray(IList)

Sortiert Deskriptoren anhand der Namen der Deskriptoren.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Ereignisse

Refreshed

Tritt auf, wenn der Cache für eine Komponente gelöscht wird.

Gilt für

Siehe auch