TypeDescriptionProvider Класс

Определение

Предоставляет дополнительные метаданные для TypeDescriptor.

public ref class TypeDescriptionProvider abstract
public abstract class TypeDescriptionProvider
type TypeDescriptionProvider = class
Public MustInherit Class TypeDescriptionProvider
Наследование
TypeDescriptionProvider
Производный

Комментарии

Класс TypeDescriptionProvider динамически расширяет сведения о типах, связанные с типом или объектом, добавляя, изменяя или скрывая такие характеристики, как атрибуты, свойства и события. Может существовать несколько классов поставщиков описания типов, которые предлагают метаданные для одного TypeDescriptor.

Существует два способа связать TypeDescriptionProvider с TypeDescriptor:

  • Во время разработки, когда целевому классу можно назначить соответствующий TypeDescriptionProviderAttribute тег.

  • Во время выполнения, когда можно вызвать один из AddProvider методов TypeDescriptor класса . Для этих перегруженных методов требуется либо целевой объект, либо его тип класса.

Класс TypeDescriptionProvider использует родительский объект того же типа, предоставленный во время построения. Это позволяет классам, производным от CustomTypeDescriptor , выборочно переопределять методы.

Экземпляры TypeDescriptionProvider создаются только по требованию, что сводит к минимуму влияние сведений о пользовательском типе на производительность.

Примечания для тех, кто реализует этот метод

Производный тип может быть помечен как internal или private, но экземпляр типа можно создать с TypeDescriptor помощью класса . Не записывайте небезопасный код, предполагая, что вызывающий объект является доверенным. Вместо этого предположим, что вызывающие объекты могут создавать экземпляры типа с частичным доверием.

Конструкторы

TypeDescriptionProvider()

Инициализирует новый экземпляр класса TypeDescriptionProvider.

TypeDescriptionProvider(TypeDescriptionProvider)

Инициализирует новый экземпляр класса TypeDescriptionProvider, используя поставщика описания родительского типа.

Методы

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

Создает объект, которым можно заменить другой тип данных.

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetCache(Object)

Возвращает кэш на пообъектной основе, доступный как пары "ключ-значение" IDictionary.

GetExtendedTypeDescriptor(Object)

Возвращает расширенный настраиваемый дескриптор типа для данного объекта.

GetExtenderProviders(Object)

Получает поставщики расширителей для заданного объекта.

GetFullComponentName(Object)

Возвращает имя заданного компонента или null, если у компонента нет имени.

GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetReflectionType(Object)

Выполняет обычное отражение для данного объекта.

GetReflectionType(Type)

Выполняет обычное отражение для типа.

GetReflectionType(Type, Object)

Выполняет обычное отражение для заданного объекта с заданным типом.

GetRuntimeType(Type)

Преобразует тип отражения в тип среды выполнения.

GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
GetTypeDescriptor(Object)

Возвращает настраиваемый дескриптор типа для заданного объекта.

GetTypeDescriptor(Type)

Возвращает настраиваемый дескриптор типа для заданного типа.

GetTypeDescriptor(Type, Object)

Возвращает настраиваемый дескриптор типа для заданного типа и объекта.

IsSupportedType(Type)

Получает значение, указывающее, совместим ли заданный тип с описанием типа и его цепочкой поставщиков описаний типов.

MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

Применяется к

См. также раздел