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, Object)

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

GetReflectionType(Type)

Выполняет нормальное отражение для типа.

GetRuntimeType(Type)

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

GetType()

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

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

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

GetTypeDescriptor(Type, Object)

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

GetTypeDescriptor(Type)

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

IsSupportedType(Type)

Возвращает значение, указывающее, совместим ли указанный тип с описанием типа и цепочкой поставщиков описания типов.

MemberwiseClone()

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

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

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

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

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

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