TypeDescriptor Classe

Definição

Fornece informações sobre as características de um componente, como atributos, propriedades e eventos.Provides information about the characteristics for a component, such as its attributes, properties, and events. Essa classe não pode ser herdada.This class cannot be inherited.

public ref class TypeDescriptor sealed
public sealed class TypeDescriptor
type TypeDescriptor = class
Public NotInheritable Class TypeDescriptor
Herança
TypeDescriptor

Comentários

O .NET Framework fornece duas maneiras de acessar metadados em um tipo: a API de reflexão fornecida no System.Reflection namespace e a TypeDescriptor classe.The .NET Framework provides two ways to access metadata on a type: the reflection API provided in the System.Reflection namespace, and the TypeDescriptor class. Reflection é um mecanismo geral disponível para todos os tipos porque sua fundação é estabelecida no GetType método da classe raiz Object .Reflection is a general mechanism available to all types because its foundation is established in the GetType method of the root Object class. As informações que ele retorna para um tipo não são extensíveis, pois não podem ser modificadas após a compilação do tipo de destino.The information it returns for a type is not extensible, in that it cannot be modified after compilation of the target type. Para obter mais informações, consulte os tópicos em reflexão.For more information, see the topics in Reflection.

Por outro lado, TypeDescriptor é um mecanismo de inspeção extensível para componentes: as classes que implementam a IComponent interface.In contrast, TypeDescriptor is an extensible inspection mechanism for components: those classes that implement the IComponent interface. Ao contrário da reflexão, ele não inspeciona métodos.Unlike reflection, it does not inspect for methods. TypeDescriptor pode ser estendido dinamicamente por vários serviços disponíveis por meio do componente de destino Site .TypeDescriptor can be dynamically extended by several services available through the target component's Site. A tabela a seguir mostra esses serviços.The following table shows these services.

Nome do serviçoService name DescriçãoDescription
IExtenderProvider Habilita outra classe, como ToolTip , para fornecer propriedades extras a um componente.Enables another class, such as ToolTip, to provide extra properties to a component.
ITypeDescriptorFilterService Permite que outro objeto modifique os metadados padrão expostos por um componente.Enables another object to modify the standard metadata that is exposed by a component.
ICustomTypeDescriptor Permite que uma classe especifique de forma completa e dinâmica seus próprios metadados, substituindo o mecanismo de inspeção padrão de TypeDescriptor .Enables a class to completely and dynamically specify its own metadata, replacing the standard inspection mechanism of TypeDescriptor.

A extensibilidade fornecida pelo TypeDescriptor permite que a representação do tempo de design de um componente seja diferente da sua representação de tempo de execução real, o que torna o TypeDescriptor útil para a criação de uma infraestrutura de tempo de design.The extensibility provided by TypeDescriptor allows the design-time representation of a component to differ from its actual run-time representation, which makes TypeDescriptor useful for building design-time infrastructure.

Todos os métodos no TypeDescriptor são static .All the methods in TypeDescriptor are static. Não é possível criar uma instância dessa classe, e essa classe não pode ser herdada.You cannot create an instance of this class, and this class cannot be inherited.

Você pode definir valores de propriedade e de evento de duas maneiras diferentes: Especifique-os na classe de componente ou altere-os em tempo de design.You can set property and event values two different ways: specify them in the component class or change them at design time. Como você pode definir esses valores de duas maneiras, os métodos sobrecarregados de TypeDescriptor usam dois tipos diferentes de parâmetros: um tipo de classe ou uma instância de objeto.Because you can set these values two ways, the overloaded methods of TypeDescriptor take two different types of parameters: a class type or an object instance.

Quando você quiser acessar TypeDescriptor informações e tiver uma instância do objeto, use o método que chama um componente.When you want to access TypeDescriptor information and you have an instance of the object, use the method that calls for a component. Use o método que chama o tipo de classe somente quando você não tem uma instância do objeto.Use the method that calls for the class type only when you do not have an instance of the object.

As propriedades e os eventos são armazenados em cache por TypeDescriptor velocidade.Properties and events are cached by TypeDescriptor for speed. Normalmente, eles são constantes para o tempo de vida de um objeto.Typically, they are constant for the lifetime of an object. No entanto, os provedores e designers do extensor podem alterar o conjunto de propriedades em um objeto.However, extender providers and designers can change the set of properties on an object. Se esse for o caso, o Refresh método deverá ser chamado para atualizar o cache.If this is the case, then the Refresh method must be called to update the cache.

Propriedades

ComNativeDescriptorHandler
Obsoleto.
Obsoleto.

Obtém ou define o provedor para as informações de tipo do COM (Component Object Model) do componente de destino.Gets or sets the provider for the Component Object Model (COM) type information for the target component.

ComObjectType

Obtém o tipo do objeto COM (Component Object Model) representado pelo componente de destino.Gets the type of the Component Object Model (COM) object represented by the target component.

InterfaceType

Obtém um tipo que representa um provedor de descrição de tipo para todos os tipos de interface.Gets a type that represents a type description provider for all interface types.

Métodos

AddAttributes(Object, Attribute[])

Adiciona os atributos de nível de classe à instância de componente de destino.Adds class-level attributes to the target component instance.

AddAttributes(Type, Attribute[])

Adiciona atributos de nível de classe ao tipo de componente de destino.Adds class-level attributes to the target component type.

AddEditorTable(Type, Hashtable)

Adiciona uma tabela de editor para o tipo base do editor especificado.Adds an editor table for the given editor base type.

AddProvider(TypeDescriptionProvider, Object)

Adiciona um provedor de descrição de tipo para uma única instância de um componente.Adds a type description provider for a single instance of a component.

AddProvider(TypeDescriptionProvider, Type)

Adiciona um provedor de descrição de tipo de uma classe de componente.Adds a type description provider for a component class.

AddProviderTransparent(TypeDescriptionProvider, Object)

Adiciona um provedor de descrição de tipo para uma única instância de um componente.Adds a type description provider for a single instance of a component.

AddProviderTransparent(TypeDescriptionProvider, Type)

Adiciona um provedor de descrição de tipo de uma classe de componente.Adds a type description provider for a component class.

CreateAssociation(Object, Object)

Cria uma associação primária-secundária entre dois objetos.Creates a primary-secondary association between two objects.

CreateDesigner(IComponent, Type)

Cria uma instância do designer associada ao componente especificado e do tipo de designer especificado.Creates an instance of the designer associated with the specified component and of the specified type of designer.

CreateEvent(Type, EventDescriptor, Attribute[])

Cria um novo descritor de evento que é idêntico a um descritor de eventos existente, ao passar pelo EventDescriptor existente.Creates a new event descriptor that is identical to an existing event descriptor, when passed the existing EventDescriptor.

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

Cria um novo descritor de evento que é idêntico a um descritor de evento existente através da geração dinâmica de informações de descritor de um evento específico em um tipo.Creates a new event descriptor that is identical to an existing event descriptor by dynamically generating descriptor information from a specified event on a type.

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

Cria um objeto que pode ser substituído em outro tipo de dados.Creates an object that can substitute for another data type.

CreateProperty(Type, PropertyDescriptor, Attribute[])

Cria um novo descritor de propriedade com base em um descritor de propriedade existente, usando o PropertyDescriptor existente especificado e matriz de atributos.Creates a new property descriptor from an existing property descriptor, using the specified existing PropertyDescriptor and attribute array.

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

Cria e associa dinamicamente um descritor de propriedade a um tipo, usando o nome, o tipo e a matriz de atributos da propriedade especificada.Creates and dynamically binds a property descriptor to a type, using the specified property name, type, and attribute array.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.Determines whether the specified object is equal to the current object.

(Herdado de Object)
GetAssociation(Type, Object)

Retorna uma instância do tipo associado com objeto primário especificado.Returns an instance of the type associated with the specified primary object.

GetAttributes(Object)

Retorna a coleção de atributos para o componente especificado.Returns the collection of attributes for the specified component.

GetAttributes(Object, Boolean)

Retorna uma coleção de atributos para o componente especificado e um valor booliano que indica que um descritor de tipo personalizado foi criado.Returns a collection of attributes for the specified component and a Boolean indicating that a custom type descriptor has been created.

GetAttributes(Type)

Retorna uma coleção de atributos para o tipo de componente especificado.Returns a collection of attributes for the specified type of component.

GetClassName(Object)

Retorna o nome da classe para o componente especificado usando o descritor de tipo padrão.Returns the name of the class for the specified component using the default type descriptor.

GetClassName(Object, Boolean)

Retorna o nome da classe para o componente especificado usando um descritor de tipo personalizado.Returns the name of the class for the specified component using a custom type descriptor.

GetClassName(Type)

Retorna o nome da classe para o tipo especificado.Returns the name of the class for the specified type.

GetComponentName(Object)

Retorna o nome do componente especificado usando o descritor de tipo padrão.Returns the name of the specified component using the default type descriptor.

GetComponentName(Object, Boolean)

Retorna o nome do componente especificado usando um descritor de tipo personalizado.Returns the name of the specified component using a custom type descriptor.

GetConverter(Object)

Retorna um conversor de tipo para o tipo do componente especificado.Returns a type converter for the type of the specified component.

GetConverter(Object, Boolean)

Retorna um conversor de tipo para o tipo do componente especificado com um descritor de tipo personalizado.Returns a type converter for the type of the specified component with a custom type descriptor.

GetConverter(Type)

Retorna um conversor de tipo para o tipo especificado.Returns a type converter for the specified type.

GetDefaultEvent(Object)

Retorna o evento padrão para o componente especificado.Returns the default event for the specified component.

GetDefaultEvent(Object, Boolean)

Retorna o evento padrão para um componente com um descritor de tipo personalizado.Returns the default event for a component with a custom type descriptor.

GetDefaultEvent(Type)

Retorna o evento padrão para o tipo de componente especificado.Returns the default event for the specified type of component.

GetDefaultProperty(Object)

Retorna a propriedade padrão para o componente especificado.Returns the default property for the specified component.

GetDefaultProperty(Object, Boolean)

Retorna a propriedade padrão para o componente especificado com um descritor de tipo personalizado.Returns the default property for the specified component with a custom type descriptor.

GetDefaultProperty(Type)

Retorna a propriedade padrão para o tipo de componente especificado.Returns the default property for the specified type of component.

GetEditor(Object, Type)

Obtém um editor com o tipo base especificado para o componente especificado.Gets an editor with the specified base type for the specified component.

GetEditor(Object, Type, Boolean)

Retorna um editor com o tipo base especificado e com um descritor de tipo personalizado para o componente especificado.Returns an editor with the specified base type and with a custom type descriptor for the specified component.

GetEditor(Type, Type)

Retorna um editor com o tipo base especificado para o tipo especificado.Returns an editor with the specified base type for the specified type.

GetEvents(Object)

Retorna a coleção de eventos para o componente especificado.Returns the collection of events for the specified component.

GetEvents(Object, Attribute[])

Retorna a coleção de eventos para um componente especificado usando uma matriz especificada de atributos como um filtro.Returns the collection of events for a specified component using a specified array of attributes as a filter.

GetEvents(Object, Attribute[], Boolean)

Retorna a coleção de eventos para um componente especificado usando uma matriz especificada de atributos como um filtro e usando um descritor de tipo personalizado.Returns the collection of events for a specified component using a specified array of attributes as a filter and using a custom type descriptor.

GetEvents(Object, Boolean)

Retorna a coleção de eventos para um componente especificado com um descritor de tipo personalizado.Returns the collection of events for a specified component with a custom type descriptor.

GetEvents(Type)

Retorna a coleção de eventos para um tipo de componente especificado.Returns the collection of events for a specified type of component.

GetEvents(Type, Attribute[])

Retorna a coleção de eventos para um tipo de componente especificado usando uma matriz especificada de atributos como um filtro.Returns the collection of events for a specified type of component using a specified array of attributes as a filter.

GetFullComponentName(Object)

Retorna o nome totalmente qualificado do componente.Returns the fully qualified name of the component.

GetHashCode()

Serve como a função de hash padrão.Serves as the default hash function.

(Herdado de Object)
GetProperties(Object)

Retorna a coleção de propriedades de um componente especificado.Returns the collection of properties for a specified component.

GetProperties(Object, Attribute[])

Retorna a coleção de propriedades de um componente especificado usando uma matriz de atributos especificada como um filtro.Returns the collection of properties for a specified component using a specified array of attributes as a filter.

GetProperties(Object, Attribute[], Boolean)

Retorna a coleção de propriedades para um componente especificado usando uma matriz especificada de atributos como um filtro e usando um descritor de tipo personalizado.Returns the collection of properties for a specified component using a specified array of attributes as a filter and using a custom type descriptor.

GetProperties(Object, Boolean)

Retorna a coleção de propriedades para um componente especificado usando o descritor de tipo padrão.Returns the collection of properties for a specified component using the default type descriptor.

GetProperties(Type)

Retorna a coleção de propriedades de um tipo de componente especificado.Returns the collection of properties for a specified type of component.

GetProperties(Type, Attribute[])

Retorna a coleção de propriedades de um tipo de componente especificado usando uma matriz especificada de atributos como um filtro.Returns the collection of properties for a specified type of component using a specified array of attributes as a filter.

GetProvider(Object)

Retorna o provedor de descrição de tipo para o componente especificado.Returns the type description provider for the specified component.

GetProvider(Type)

Retorna o provedor de descrição de tipo para o tipo especificado.Returns the type description provider for the specified type.

GetReflectionType(Object)

Retorna um Type que pode ser usado para executar a reflexão, considerando um objeto.Returns a Type that can be used to perform reflection, given an object.

GetReflectionType(Type)

Retorna um Type que pode ser usado para executar a reflexão, considerando um tipo de classe.Returns a Type that can be used to perform reflection, given a class type.

GetType()

Obtém o Type da instância atual.Gets the Type of the current instance.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Object atual.Creates a shallow copy of the current Object.

(Herdado de Object)
Refresh(Assembly)

Limpa do cache as propriedades e eventos do assembly especificado.Clears the properties and events for the specified assembly from the cache.

Refresh(Module)

Limpa do cache as propriedades e eventos do módulo especificado.Clears the properties and events for the specified module from the cache.

Refresh(Object)

Limpa do cache as propriedades e eventos do componente especificado.Clears the properties and events for the specified component from the cache.

Refresh(Type)

Limpa do cache as propriedades e eventos do tipo de componente especificado.Clears the properties and events for the specified type of component from the cache.

RemoveAssociation(Object, Object)

Remove uma associação entre dois objetos.Removes an association between two objects.

RemoveAssociations(Object)

Remove todas as associações de um objeto primário.Removes all associations for a primary object.

RemoveProvider(TypeDescriptionProvider, Object)

Remove um provedor de descrição de tipo adicionado anteriormente, que esteja associado com o objeto especificado.Removes a previously added type description provider that is associated with the specified object.

RemoveProvider(TypeDescriptionProvider, Type)

Remove um provedor de descrição de tipo adicionado anteriormente, que esteja associado com o tipo especificado.Removes a previously added type description provider that is associated with the specified type.

RemoveProviderTransparent(TypeDescriptionProvider, Object)

Remove um provedor de descrição de tipo adicionado anteriormente, que esteja associado com o objeto especificado.Removes a previously added type description provider that is associated with the specified object.

RemoveProviderTransparent(TypeDescriptionProvider, Type)

Remove um provedor de descrição de tipo adicionado anteriormente, que esteja associado com o tipo especificado.Removes a previously added type description provider that is associated with the specified type.

SortDescriptorArray(IList)

Classifica os descritores usando o nome do descritor.Sorts descriptors using the name of the descriptor.

ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.Returns a string that represents the current object.

(Herdado de Object)

Eventos

Refreshed

Ocorre quando o cache de um componente é limpo.Occurs when the cache for a component is cleared.

Aplica-se a

Confira também