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

Das .NET Framework bietet zwei Möglichkeiten für den Zugriff auf Metadaten für einen Typ: die spiegelungs-API, die im namespace System.Reflection und die klasse TypeDescriptor bereitgestellt wird. Spiegelung 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 TypeDescriptor ist 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 kann dynamisch um mehrere Dienste erweitert werden, die über die Zielkomponente Siteverfügbar sind. Die folgende Tabelle zeigt diese Dienste.

Dienstname Beschreibung
IExtenderProvider Ermöglicht eine andere Klasse, z ToolTip. B. die Bereitstellung zusätzlicher Eigenschaften für eine Komponente.
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, und ersetzt dabei den Standardüberprüfungsmechanismus von TypeDescriptor.

Die erweiterbare Funktion TypeDescriptor ermöglicht es der Entwurfszeitdarstellung einer Komponente, sich von der tatsächlichen Laufzeitdarstellung zu unterscheiden, die für die Erstellung der 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 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 TypeDescriptor zwei verschiedene Parametertypen: einen Klassentyp oder eine Objektinstanz.

Wenn Sie auf Informationen zugreifen TypeDescriptor möchten und über eine Instanz des Objekts verfügen, verwenden Sie die Methode, die für 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 zur TypeDescriptor 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

Name Beschreibung
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

Name Beschreibung
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 mithilfe des angegebenen vorhandenen und PropertyDescriptor 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, 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(Object)

Gibt die Auflistung der Attribute für die angegebene Komponente zurück.

GetAttributes(Type)

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

GetClassName(Object, Boolean)

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

GetClassName(Object)

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

GetClassName(Type)

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

GetComponentName(Object, Boolean)

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

GetComponentName(Object)

Gibt den Namen der angegebenen Komponente mit dem Standardtypdeskriptor zurück.

GetConverter(Object, Boolean)

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

GetConverter(Object)

Gibt einen Typkonverter für den Typ der angegebenen Komponente 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, Boolean)

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

GetDefaultEvent(Object)

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

GetDefaultEvent(Type)

Gibt das Standardereignis für den angegebenen Komponententyp zurück.

GetDefaultProperty(Object, Boolean)

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

GetDefaultProperty(Object)

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

GetDefaultProperty(Type)

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

GetEditor(Object, Type, Boolean)

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

GetEditor(Object, Type)

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

GetEditor(Type, Type)

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

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, Attribute[])

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

GetEvents(Object, Boolean)

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

GetEvents(Object)

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

GetEvents(Type)

Gibt die Auflistung von Ereignissen für einen angegebenen Komponententyp 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, 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, Attribute[])

Gibt die Auflistung von Eigenschaften für eine angegebene Komponente mithilfe eines angegebenen Arrays von Attributen als Filter zurück.

GetProperties(Object, Boolean)

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

GetProperties(Object)

Gibt die Auflistung von Eigenschaften für eine angegebene Komponente 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.

GetProperties(Type)

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

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

GetReflectionType(Type)

Gibt einen Type Wert zurück, der verwendet werden kann, um Spiegelungen anhand eines Klassentyps 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

Name Beschreibung
Refreshed

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

Gilt für:

Weitere Informationen