Freigeben über


TypeDescriptor Klasse

Definition

Stellt Informationen zu den Merkmalen einer Komponente bereit, z. B. die Attribute, Eigenschaften und Ereignisse. Diese Klasse kann nicht geerbt werden.

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

Hinweise

.NET Framework bietet zwei Möglichkeiten für den Zugriff auf Metadaten für einen Typ: die im System.Reflection Namespace bereitgestellte Spiegelungs-API und die TypeDescriptor-Klasse. Reflection ist ein allgemeiner Mechanismus, der allen Typen zur Verfügung steht, da ihre Grundlage in der GetType Methode der Stammklasse Object aufgebaut ist. Die für einen Typ zurückgegebenen Informationen sind nicht erweiterbar, da sie nach der Kompilierung des Zieltyps nicht geändert werden können. Weitere Informationen finden Sie in den Themen in Reflection.

Im Gegensatz dazu ist TypeDescriptor ein erweiterbarer Inspektionsmechanismus für Komponenten: diese Klassen, die die IComponent Schnittstelle implementieren. Im Gegensatz zur Reflexion wird sie nicht auf Methoden überprüft. TypeDescriptor können dynamisch um mehrere Dienste erweitert werden, die über die Siteder Zielkomponente verfügbar sind. Die folgende Tabelle zeigt diese Dienste.

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

Die Erweiterbarkeit, die von TypeDescriptor bereitgestellt wird, ermöglicht es der Entwurfszeitdarstellung einer Komponente, sich von der tatsächlichen Laufzeitdarstellung zu unterscheiden, was TypeDescriptor nützlich für die Erstellung der Entwurfszeitinfrastruktur macht.

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

Sie können Eigenschafts- 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, verwenden die überladenen Methoden von TypeDescriptor zwei verschiedene Typen von Parametern: einen Klassentyp oder eine Objektinstanz.

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

Eigenschaften und Ereignisse werden von TypeDescriptor zur Geschwindigkeit zwischengespeichert. In der Regel sind sie für die Lebensdauer eines Objekts konstant. Erweiterungsanbieter 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.

Dient zum Abrufen oder Festlegen des Anbieters für die Com-Typinformationen (Component Object Model) für die Zielkomponente.

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 der Zielkomponenteninstanz Attribute auf Klassenebene hinzu.

AddAttributes(Type, Attribute[])

Fügt dem Zielkomponententyp Attribute auf Klassenebene hinzu.

AddEditorTable(Type, Hashtable)

Fügt eine Editortabelle für den angegebenen Editorbasistyp 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äre sekundäre Zuordnung zwischen zwei Objekten.

CreateDesigner(IComponent, Type)

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

CreateEvent(Type, EventDescriptor, Attribute[])

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

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

Erstellt einen neuen Ereignisdeskriptor, der mit einem vorhandenen Ereignisdeskriptor identisch ist, indem dynamisch Deskriptorinformationen aus einem angegebenen Ereignis eines Typs generiert werden.

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

Erstellt ein Objekt, das durch einen anderen Datentyp ersetzt werden kann.

CreateProperty(Type, PropertyDescriptor, Attribute[])

Erstellt einen neuen Eigenschaftsdeskriptor aus einem vorhandenen Eigenschaftsdeskriptor unter Verwendung des angegebenen vorhandenen PropertyDescriptor und Attributarrays.

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

Erstellt und bindet einen Eigenschaftsdeskriptor dynamisch an einen Typ, wobei der angegebene Eigenschaftsname, der Typ und das Attributarray verwendet werden.

Equals(Object)

Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht.

(Geerbt von Object)
GetAssociation(Type, Object)

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

GetAttributes(Object)

Gibt die Auflistung der Attribute 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 benutzerdefinierter Typdeskriptor erstellt wurde.

GetAttributes(Type)

Gibt eine Auflistung von Attributen für den angegebenen Komponententyp zurück.

GetClassName(Object)

Gibt den Namen der Klasse für die angegebene Komponente mithilfe des Standardtypdeskriptors zurück.

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 mit dem Standardtypdeskriptor zurück.

GetComponentName(Object, Boolean)

Gibt den Namen der angegebenen Komponente mithilfe eines benutzerdefinierten Typdeskriptors zurück.

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 einen Typkonverter für den angegebenen Typ zurück.

GetConverterFromRegisteredType(Object)

Ruft einen Typkonverter für den Typ der angegebenen Komponente ab.

GetConverterFromRegisteredType(Type)

Ruft einen Typkonverter für den angegebenen registrierten Typ ab.

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 Komponententyp 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 die Auflistung von Ereignissen für die angegebene Komponente zurück.

GetEvents(Object, Attribute[])

Gibt die Auflistung von Ereignissen für eine angegebene Komponente zurück, die ein angegebenes Array von Attributen als Filter verwendet.

GetEvents(Object, Attribute[], Boolean)

Gibt die Auflistung von Ereignissen für eine angegebene Komponente zurück, die ein angegebenes Array von Attributen als Filter verwendet und einen benutzerdefinierten Typdeskriptor verwendet.

GetEvents(Object, Boolean)

Gibt die Auflistung von Ereignissen 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 von Ereignissen für einen angegebenen Komponententyp mithilfe eines angegebenen Arrays von Attributen als Filter zurück.

GetEventsFromRegisteredType(Type)

Ruft eine Auflistung von Ereignissen für einen angegebenen Komponententyp ab.

GetFullComponentName(Object)

Gibt den vollqualifizierten Namen der Komponente zurück.

GetHashCode()

Dient 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 von Eigenschaften für eine angegebene Komponente mithilfe eines angegebenen Arrays von Attributen als Filter zurück.

GetProperties(Object, Attribute[], Boolean)

Gibt die Auflistung von Eigenschaften für eine angegebene Komponente zurück, die ein angegebenes Array von Attributen als Filter verwendet und einen benutzerdefinierten Typdeskriptor verwendet.

GetProperties(Object, Boolean)

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

GetProperties(Type)

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

GetProperties(Type, Attribute[])

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

GetPropertiesFromRegisteredType(Object)

Ruft eine Auflistung von Eigenschaften für eine angegebene Komponente ab.

GetPropertiesFromRegisteredType(Type)

Ruft eine Auflistung von Eigenschaften für einen angegebenen Typ ab.

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 eine Type zurück, die verwendet werden kann, um spiegelungen durchzuführen, wenn ein Objekt angegeben ist.

GetReflectionType(Type)

Gibt eine Type zurück, die verwendet werden kann, um Spiegelungen nach einem Klassentyp durchzuführen.

GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie der 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 den angegebenen Komponententyp aus dem Cache.

RegisterType<T>()

Registriert den Typ, damit er von spiegelbasierten Anbietern in gekürzten Anwendungen verwendet werden kann.

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 mithilfe des Namens des Deskriptors.

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:

Weitere Informationen