TypeDescriptor Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Fornece informações sobre as características de um componente, como seus atributos, propriedades e eventos. Essa classe não pode ser herdada.
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 namespace System.Reflection e a classe TypeDescriptor. Reflexão é um mecanismo geral disponível para todos os tipos porque sua base é estabelecida no método GetType da classe Object raiz. As informações retornadas para um tipo não são extensíveis, pois não podem ser modificadas após a compilação do tipo de destino. Para obter mais informações, consulte os tópicos no Reflection.
Por outro lado, TypeDescriptor é um mecanismo de inspeção extensível para componentes: as classes que implementam a interface IComponent. Ao contrário da reflexão, ela não inspeciona métodos. TypeDescriptor pode ser estendido dinamicamente por vários serviços disponíveis por meio do Sitedo componente de destino. A tabela a seguir mostra esses serviços.
Nome do serviço | Descrição |
---|---|
IExtenderProvider | Permite que outra classe, como ToolTip, forneça propriedades extras a um componente. |
ITypeDescriptorFilterService | Permite que outro objeto modifique os metadados padrão expostos por um componente. |
ICustomTypeDescriptor | Permite que uma classe especifique completamente e dinamicamente seus próprios metadados, substituindo o mecanismo de inspeção padrão de TypeDescriptor. |
A extensibilidade fornecida pelo TypeDescriptor permite que a representação em tempo de design de um componente difere de sua representação real em tempo de execução, o que torna TypeDescriptor útil para criar infraestrutura de tempo de design.
Todos os métodos em TypeDescriptor são static
. Você não pode criar uma instância dessa classe e essa classe não pode ser herdada.
Você pode definir valores de propriedade e evento de duas maneiras diferentes: especifique-os na classe de componente ou altere-os em tempo de design. Como você pode definir esses valores de duas maneiras, os métodos sobrecarregados de TypeDescriptor levam dois tipos diferentes de parâmetros: um tipo de classe ou uma instância de objeto.
Quando quiser acessar TypeDescriptor informações e tiver uma instância do objeto, use o método que exige um componente. Use o método que exige o tipo de classe somente quando você não tiver uma instância do objeto.
Propriedades e eventos são armazenados em cache por TypeDescriptor para velocidade. Normalmente, elas são constantes durante o tempo de vida de um objeto. No entanto, provedores e designers de extensor podem alterar o conjunto de propriedades em um objeto. Se esse for o caso, o método Refresh deverá ser chamado para atualizar o cache.
Propriedades
ComNativeDescriptorHandler |
Obsoleto.
Obsoleto.
Obsoleto.
Obsoleto.
Obtém ou define o provedor para as informações de tipo COM (Component Object Model) para o componente de destino. |
ComObjectType |
Obtém o tipo do objeto COM (Component Object Model) representado pelo componente de destino. |
InterfaceType |
Obtém um tipo que representa um provedor de descrição de tipo para todos os tipos de interface. |
Métodos
AddAttributes(Object, Attribute[]) |
Adiciona atributos de nível de classe à instância do componente de destino. |
AddAttributes(Type, Attribute[]) |
Adiciona atributos de nível de classe ao tipo de componente de destino. |
AddEditorTable(Type, Hashtable) |
Adiciona uma tabela de editor para o tipo base do editor fornecido. |
AddProvider(TypeDescriptionProvider, Object) |
Adiciona um provedor de descrição de tipo para uma única instância de um componente. |
AddProvider(TypeDescriptionProvider, Type) |
Adiciona um provedor de descrição de tipo para uma classe de componente. |
AddProviderTransparent(TypeDescriptionProvider, Object) |
Adiciona um provedor de descrição de tipo para uma única instância de um componente. |
AddProviderTransparent(TypeDescriptionProvider, Type) |
Adiciona um provedor de descrição de tipo para uma classe de componente. |
CreateAssociation(Object, Object) |
Cria uma associação primária-secundária entre dois objetos. |
CreateDesigner(IComponent, Type) |
Cria uma instância do designer associado ao componente especificado e do tipo de designer especificado. |
CreateEvent(Type, EventDescriptor, Attribute[]) |
Cria um novo descritor de evento idêntico a um descritor de evento existente, quando passado o EventDescriptorexistente. |
CreateEvent(Type, String, Type, Attribute[]) |
Cria um novo descritor de evento idêntico a um descritor de evento existente gerando dinamicamente informações de descritor de um evento especificado em um tipo. |
CreateInstance(IServiceProvider, Type, Type[], Object[]) |
Cria um objeto que pode substituir outro tipo de dados. |
CreateProperty(Type, PropertyDescriptor, Attribute[]) |
Cria um novo descritor de propriedade de um descritor de propriedade existente, usando o PropertyDescriptor e a matriz de atributos existentes especificados. |
CreateProperty(Type, String, Type, Attribute[]) |
Cria e associa dinamicamente um descritor de propriedade a um tipo, usando o nome da propriedade, o tipo e a matriz de atributos especificados. |
Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
GetAssociation(Type, Object) |
Retorna uma instância do tipo associado ao objeto primário especificado. |
GetAttributes(Object) |
Retorna a coleção de atributos para o componente especificado. |
GetAttributes(Object, Boolean) |
Retorna uma coleção de atributos para o componente especificado e um booliano que indica que um descritor de tipo personalizado foi criado. |
GetAttributes(Type) |
Retorna uma coleção de atributos para o tipo de componente especificado. |
GetClassName(Object) |
Retorna o nome da classe para o componente especificado usando o descritor de tipo padrão. |
GetClassName(Object, Boolean) |
Retorna o nome da classe para o componente especificado usando um descritor de tipo personalizado. |
GetClassName(Type) |
Retorna o nome da classe para o tipo especificado. |
GetComponentName(Object) |
Retorna o nome do componente especificado usando o descritor de tipo padrão. |
GetComponentName(Object, Boolean) |
Retorna o nome do componente especificado usando um descritor de tipo personalizado. |
GetConverter(Object) |
Retorna um conversor de tipo para o tipo do componente especificado. |
GetConverter(Object, Boolean) |
Retorna um conversor de tipo para o tipo do componente especificado com um descritor de tipo personalizado. |
GetConverter(Type) |
Retorna um conversor de tipo para o tipo especificado. |
GetConverterFromRegisteredType(Object) |
Obtém um conversor de tipo para o tipo do componente especificado. |
GetConverterFromRegisteredType(Type) |
Obtém um conversor de tipo para o tipo registrado especificado. |
GetDefaultEvent(Object) |
Retorna o evento padrão para o componente especificado. |
GetDefaultEvent(Object, Boolean) |
Retorna o evento padrão para um componente com um descritor de tipo personalizado. |
GetDefaultEvent(Type) |
Retorna o evento padrão para o tipo de componente especificado. |
GetDefaultProperty(Object) |
Retorna a propriedade padrão para o componente especificado. |
GetDefaultProperty(Object, Boolean) |
Retorna a propriedade padrão para o componente especificado com um descritor de tipo personalizado. |
GetDefaultProperty(Type) |
Retorna a propriedade padrão para o tipo de componente especificado. |
GetEditor(Object, Type) |
Obtém um editor com o tipo base especificado para o componente especificado. |
GetEditor(Object, Type, Boolean) |
Retorna um editor com o tipo base especificado e com um descritor de tipo personalizado para o componente especificado. |
GetEditor(Type, Type) |
Retorna um editor com o tipo base especificado para o tipo especificado. |
GetEvents(Object) |
Retorna a coleção de eventos para o componente especificado. |
GetEvents(Object, Attribute[]) |
Retorna a coleção de eventos para um componente especificado usando uma matriz especificada de atributos como um filtro. |
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. |
GetEvents(Object, Boolean) |
Retorna a coleção de eventos para um componente especificado com um descritor de tipo personalizado. |
GetEvents(Type) |
Retorna a coleção de eventos para um tipo de componente especificado. |
GetEvents(Type, Attribute[]) |
Retorna a coleção de eventos para um tipo especificado de componente usando uma matriz de atributos especificada como um filtro. |
GetEventsFromRegisteredType(Type) |
Obtém uma coleção de eventos para um tipo de componente especificado. |
GetFullComponentName(Object) |
Retorna o nome totalmente qualificado do componente. |
GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
GetProperties(Object) |
Retorna a coleção de propriedades de um componente especificado. |
GetProperties(Object, Attribute[]) |
Retorna a coleção de propriedades de um componente especificado usando uma matriz especificada de atributos como um filtro. |
GetProperties(Object, Attribute[], Boolean) |
Retorna a coleção de propriedades de um componente especificado usando uma matriz especificada de atributos como um filtro e usando um descritor de tipo personalizado. |
GetProperties(Object, Boolean) |
Retorna a coleção de propriedades de um componente especificado usando o descritor de tipo padrão. |
GetProperties(Type) |
Retorna a coleção de propriedades para um tipo de componente especificado. |
GetProperties(Type, Attribute[]) |
Retorna a coleção de propriedades de um tipo de componente especificado usando uma matriz de atributos especificada como um filtro. |
GetPropertiesFromRegisteredType(Object) |
Obtém uma coleção de propriedades para um componente especificado. |
GetPropertiesFromRegisteredType(Type) |
Obtém uma coleção de propriedades para um tipo especificado. |
GetProvider(Object) |
Retorna o provedor de descrição de tipo para o componente especificado. |
GetProvider(Type) |
Retorna o provedor de descrição de tipo para o tipo especificado. |
GetReflectionType(Object) |
Retorna um Type que pode ser usado para executar reflexão, considerando um objeto. |
GetReflectionType(Type) |
Retorna um Type que pode ser usado para executar reflexão, dado um tipo de classe. |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
MemberwiseClone() |
Cria uma cópia superficial do Objectatual. (Herdado de Object) |
Refresh(Assembly) |
Limpa as propriedades e os eventos do assembly especificado do cache. |
Refresh(Module) |
Limpa as propriedades e os eventos do módulo especificado do cache. |
Refresh(Object) |
Limpa as propriedades e os eventos do componente especificado do cache. |
Refresh(Type) |
Limpa as propriedades e os eventos do tipo de componente especificado do cache. |
RegisterType<T>() |
Registra o tipo para que ele possa ser usado por provedores baseados em reflexão em aplicativos cortados. |
RemoveAssociation(Object, Object) |
Remove uma associação entre dois objetos. |
RemoveAssociations(Object) |
Remove todas as associações de um objeto primário. |
RemoveProvider(TypeDescriptionProvider, Object) |
Remove um provedor de descrição de tipo adicionado anteriormente associado ao objeto especificado. |
RemoveProvider(TypeDescriptionProvider, Type) |
Remove um provedor de descrição de tipo adicionado anteriormente associado ao tipo especificado. |
RemoveProviderTransparent(TypeDescriptionProvider, Object) |
Remove um provedor de descrição de tipo adicionado anteriormente associado ao objeto especificado. |
RemoveProviderTransparent(TypeDescriptionProvider, Type) |
Remove um provedor de descrição de tipo adicionado anteriormente associado ao tipo especificado. |
SortDescriptorArray(IList) |
Classifica descritores usando o nome do descritor. |
ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |
Eventos
Refreshed |
Ocorre quando o cache de um componente é limpo. |
Aplica-se a
Confira também
- EventDescriptor
- PropertyDescriptor
- System.Reflection
- IComponent
- ISite
- Visão geral do descritor de tipo
- de Reflexão