TypeDescriptor Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Fornece informações sobre as características de um componente, como os seus atributos, propriedades e eventos. Esta 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
Observações
.NET Framework fornece duas formas de aceder a metadados de um tipo: a API de reflexão fornecida no espaço de nomes System.Reflection e a classe TypeDescriptor. A reflexão é um mecanismo geral disponível para todos os tipos porque a sua base está estabelecida no GetType método da classe raiz.Object A informação que devolve para um tipo não é extensível, pois não pode ser modificada após a compilação do tipo alvo. Para mais informações, consulte os tópicos em Reflexão.
Em contraste, TypeDescriptor é um mecanismo de inspeção extensível para componentes: aquelas classes que implementam a IComponent interface. Ao contrário da reflexão, não inspeciona métodos. TypeDescriptor pode ser estendido dinamicamente por vários serviços disponíveis através do componente Sitealvo . A tabela seguinte mostra estes serviços.
| Nome do serviço | Description |
|---|---|
| IExtenderProvider | Permite que outra classe, como ToolTip, forneça propriedades adicionais 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 os seus próprios metadados, substituindo o mecanismo padrão de inspeção de TypeDescriptor. |
A extensibilidade proporcionada por TypeDescriptor permite que a representação em tempo de projeto de um componente diferia da sua representação real em tempo de execução, o que é TypeDescriptor útil para construir infraestruturas em tempo de projeto.
Todos os métodos em TypeDescriptor são static. Não podes criar uma instância desta classe, e esta classe não pode ser herdada.
Podes definir valores de propriedades e eventos de duas formas diferentes: especificá-los na classe componente ou mudá-los no momento do design. Como podes definir estes valores de duas formas, os métodos sobrecarregados de TypeDescriptor aceitam dois tipos diferentes de parâmetros: um tipo de classe ou uma instância de objeto.
Quando quiser aceder TypeDescriptor à informação e tiver uma instância do objeto, use o método que chama um componente. Use o método que chama o tipo de classe apenas quando não tem uma instância do objeto.
Propriedades e eventos são armazenados em cache para TypeDescriptor maior velocidade. Normalmente, são constantes durante toda a vida útil de um objeto. No entanto, os fornecedores e designers de extensores podem alterar o conjunto de propriedades de um objeto. Se for esse o caso, então o Refresh método deve ser chamado para atualizar a cache.
Propriedades
| Name | Description |
|---|---|
| ComNativeDescriptorHandler |
Obsoleto.
Obsoleto.
Obtém ou define o fornecedor para a informação do tipo Component Object Model (COM) para o componente alvo. |
| ComObjectType |
Obtém o tipo de objeto Component Object Model (COM) representado pelo componente alvo. |
| InterfaceType |
Obtém um tipo que representa um fornecedor de descrição de tipo para todos os tipos de interface. |
Métodos
| Name | Description |
|---|---|
| AddAttributes(Object, Attribute[]) |
Adiciona atributos ao nível da classe à instância do componente alvo. |
| AddAttributes(Type, Attribute[]) |
Adiciona atributos ao nível da classe ao tipo de componente alvo. |
| AddEditorTable(Type, Hashtable) |
Adiciona uma tabela de editor para o tipo de base de editor dado. |
| AddProvider(TypeDescriptionProvider, Object) |
Adiciona um fornecedor de descrição de tipo para uma única instância de um componente. |
| AddProvider(TypeDescriptionProvider, Type) |
Adiciona um fornecedor de descrição de tipos para uma classe de componente. |
| AddProviderTransparent(TypeDescriptionProvider, Object) |
Adiciona um fornecedor de descrição de tipo para uma única instância de um componente. |
| AddProviderTransparent(TypeDescriptionProvider, Type) |
Adiciona um fornecedor de descrição de tipos 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 associada ao componente especificado e ao tipo de designer especificado. |
| CreateEvent(Type, EventDescriptor, Attribute[]) |
Cria um novo descritor de evento idêntico a um descritor de evento existente, quando passado pelo existente EventDescriptor. |
| CreateEvent(Type, String, Type, Attribute[]) |
Cria um novo descritor de evento idêntico a um descritor de evento existente, gerando dinamicamente informação de descritor a partir de um evento especificado num tipo. |
| CreateInstance(IServiceProvider, Type, Type[], Object[]) |
Cria um objeto que pode substituir outro tipo de dado. |
| CreateProperty(Type, PropertyDescriptor, Attribute[]) |
Cria um novo descritor de propriedade a partir de um descritor de propriedade existente, usando o array existente PropertyDescriptor e de atributos especificado. |
| CreateProperty(Type, String, Type, Attribute[]) |
Cria e vincula dinamicamente um descritor de propriedade a um tipo, usando o nome da propriedade, o tipo e o array de atributos especificados. |
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| GetAssociation(Type, Object) |
Devolve uma instância do tipo associado ao objeto primário especificado. |
| GetAttributes(Object, Boolean) |
Devolve uma coleção de atributos para o componente especificado e um Booleano indicando que foi criado um descritor de tipo personalizado. |
| GetAttributes(Object) |
Devolve a coleção de atributos para o componente especificado. |
| GetAttributes(Type) |
Devolve uma coleção de atributos para o tipo de componente especificado. |
| GetClassName(Object, Boolean) |
Devolve o nome da classe para o componente especificado usando um descritor de tipo personalizado. |
| GetClassName(Object) |
Devolve o nome da classe para o componente especificado usando o descritor de tipo padrão. |
| GetClassName(Type) |
Devolve o nome da classe para o tipo especificado. |
| GetComponentName(Object, Boolean) |
Devolve o nome do componente especificado usando um descritor de tipo personalizado. |
| GetComponentName(Object) |
Devolve o nome do componente especificado usando o descritor de tipo padrão. |
| GetConverter(Object, Boolean) |
Devolve um conversor de tipos para o tipo do componente especificado com um descritor de tipo personalizado. |
| GetConverter(Object) |
Devolve um conversor de tipos para o tipo do componente especificado. |
| GetConverter(Type) |
Devolve um conversor de tipos para o tipo especificado. |
| GetDefaultEvent(Object, Boolean) |
Devolve o evento predefinido de um componente com um descritor de tipo personalizado. |
| GetDefaultEvent(Object) |
Devolve o evento predefinido para o componente especificado. |
| GetDefaultEvent(Type) |
Devolve o evento padrão para o tipo de componente especificado. |
| GetDefaultProperty(Object, Boolean) |
Devolve a propriedade por defeito para o componente especificado com um descritor de tipo personalizado. |
| GetDefaultProperty(Object) |
Devolve a propriedade padrão para o componente especificado. |
| GetDefaultProperty(Type) |
Devolve a propriedade padrão para o tipo de componente especificado. |
| GetEditor(Object, Type, Boolean) |
Devolve um editor com o tipo base especificado e com um descritor de tipo personalizado para o componente especificado. |
| GetEditor(Object, Type) |
Recebe um editor com o tipo base especificado para o componente especificado. |
| GetEditor(Type, Type) |
Devolve um editor com o tipo base especificado para o tipo especificado. |
| GetEvents(Object, Attribute[], Boolean) |
Devolve a coleção de eventos para um componente especificado usando um array especificado de atributos como filtro e usando um descritor de tipo personalizado. |
| GetEvents(Object, Attribute[]) |
Devolve a coleção de eventos para um componente especificado usando um array especificado de atributos como filtro. |
| GetEvents(Object, Boolean) |
Devolve a coleção de eventos para um componente especificado com um descritor de tipo personalizado. |
| GetEvents(Object) |
Devolve a coleção de eventos para o componente especificado. |
| GetEvents(Type, Attribute[]) |
Devolve a coleção de eventos para um tipo específico de componente usando um array especificado de atributos como filtro. |
| GetEvents(Type) |
Devolve a coleção de eventos para um tipo específico de componente. |
| GetFullComponentName(Object) |
Devolve o nome totalmente qualificado do componente. |
| GetHashCode() |
Serve como função de hash predefinida. (Herdado de Object) |
| GetProperties(Object, Attribute[], Boolean) |
Devolve a coleção de propriedades de um componente especificado usando um array especificado de atributos como filtro e usando um descritor de tipo personalizado. |
| GetProperties(Object, Attribute[]) |
Devolve a coleção de propriedades de um componente especificado usando um array especificado de atributos como filtro. |
| GetProperties(Object, Boolean) |
Devolve a coleção de propriedades para um componente especificado usando o descriptor de tipo padrão. |
| GetProperties(Object) |
Devolve a coleção de propriedades para um componente especificado. |
| GetProperties(Type, Attribute[]) |
Devolve a coleção de propriedades para um tipo específico de componente usando um array especificado de atributos como filtro. |
| GetProperties(Type) |
Devolve a coleção de propriedades para um tipo específico de componente. |
| GetProvider(Object) |
Devolve o fornecedor de descrição do tipo para o componente especificado. |
| GetProvider(Type) |
Devolve o fornecedor de descrição do tipo para o tipo especificado. |
| GetReflectionType(Object) |
Devolve a Type que pode ser usado para realizar reflexão, dado um objeto. |
| GetReflectionType(Type) |
Devolve a Type que pode ser usado para realizar 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 atual Object. (Herdado de Object) |
| Refresh(Assembly) |
Limpa as propriedades e eventos do assembly especificado da cache. |
| Refresh(Module) |
Apaga as propriedades e eventos do módulo especificado da cache. |
| Refresh(Object) |
Limpa as propriedades e eventos do componente especificado da cache. |
| Refresh(Type) |
Apaga as propriedades e eventos do tipo de componente especificado da cache. |
| RemoveAssociation(Object, Object) |
Remove uma associação entre dois objetos. |
| RemoveAssociations(Object) |
Remove todas as associações para um objeto primário. |
| RemoveProvider(TypeDescriptionProvider, Object) |
Remove um fornecedor de descrição de tipo previamente adicionado que está associado ao objeto especificado. |
| RemoveProvider(TypeDescriptionProvider, Type) |
Remove um fornecedor de descrição de tipo previamente adicionado que está associado ao tipo especificado. |
| RemoveProviderTransparent(TypeDescriptionProvider, Object) |
Remove um fornecedor de descrição de tipo previamente adicionado que está associado ao objeto especificado. |
| RemoveProviderTransparent(TypeDescriptionProvider, Type) |
Remove um fornecedor de descrição de tipo previamente adicionado que está associado ao tipo especificado. |
| SortDescriptorArray(IList) |
Ordena os descritores usando o nome do descritor. |
| ToString() |
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |
evento
| Name | Description |
|---|---|
| Refreshed |
Ocorre quando a cache de um componente é limpa. |