TypeDescriptionProvider 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 metadados suplementares ao TypeDescriptor.
public ref class TypeDescriptionProvider abstract
public abstract class TypeDescriptionProvider
type TypeDescriptionProvider = class
Public MustInherit Class TypeDescriptionProvider
- Herança
-
TypeDescriptionProvider
- Derivado
Comentários
A TypeDescriptionProvider classe estende dinamicamente as informações de tipo associadas a um tipo ou objeto adicionando, modificando ou ocultando características como atributos, propriedades e eventos. Pode haver várias classes de provedor de descrição de tipo que oferecem metadados para um único TypeDescriptor.
Há duas maneiras de associar um TypeDescriptionProvider a um TypeDescriptor:
Em tempo de design, quando a classe de destino pode ser atribuída a marca apropriada TypeDescriptionProviderAttribute .
Em tempo de execução, quando um dos AddProvider métodos da TypeDescriptor classe pode ser chamado. Esses métodos sobrecarregados exigem o objeto de destino ou seu tipo de classe.
A TypeDescriptionProvider classe depende de um objeto pai do mesmo tipo, fornecido durante a construção. Isso permite que classes derivadas de CustomTypeDescriptor substituam seletivamente métodos.
As instâncias do TypeDescriptionProvider são criadas apenas sob demanda, minimizando o impacto das informações de tipo personalizado no desempenho.
Notas aos Implementadores
Seu tipo derivado pode ser marcado como internal
ou private
, mas uma instância do tipo pode ser criada com a TypeDescriptor classe . Não escreva código inseguro supondo que o chamador seja confiável. Suponha, em vez disso, que os chamadores possam criar instâncias do seu tipo em confiança parcial.
Construtores
TypeDescriptionProvider() |
Inicializa uma nova instância da classe TypeDescriptionProvider. |
TypeDescriptionProvider(TypeDescriptionProvider) |
Inicializa uma nova instância da classe TypeDescriptionProvider usando um provedor de descrição de tipo pai. |
Métodos
CreateInstance(IServiceProvider, Type, Type[], Object[]) |
Cria um objeto que pode ser substituído em outro tipo de dados. |
Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
GetCache(Object) |
Obtém um cache por objeto, acessado como um IDictionary de pares chave-valor. |
GetExtendedTypeDescriptor(Object) |
Obtém um descritor de tipo personalizado estendido para o objeto fornecido. |
GetExtenderProviders(Object) |
Obtém os provedores de controle do extensor para o objeto especificado. |
GetFullComponentName(Object) |
Obtém o nome do componente especificado ou |
GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
GetReflectionType(Object) |
Executa a reflexão normal no objeto fornecido. |
GetReflectionType(Type) |
Executa a reflexão normal em relação a um tipo. |
GetReflectionType(Type, Object) |
Executa a reflexão normal no objeto fornecido com o tipo fornecido. |
GetRuntimeType(Type) |
Converte um tipo de reflexão em um tipo de runtime. |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
GetTypeDescriptor(Object) |
Obtém um descritor de tipo personalizado para o objeto fornecido. |
GetTypeDescriptor(Type) |
Obtém um descritor de tipo personalizado para o tipo fornecido. |
GetTypeDescriptor(Type, Object) |
Obtém um descritor de tipo personalizado para o tipo e o objeto fornecidos. |
IsSupportedType(Type) |
Obtém um valor que indica se o tipo especificado é compatível com a descrição do tipo e sua cadeia de provedores de descrição de tipo. |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |
Aplica-se a
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de