TypeDescriptionProvider 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
向 TypeDescriptor 提供补充元数据。
public ref class TypeDescriptionProvider abstract
public abstract class TypeDescriptionProvider
type TypeDescriptionProvider = class
Public MustInherit Class TypeDescriptionProvider
- 继承
-
TypeDescriptionProvider
- 派生
注解
类 TypeDescriptionProvider 通过添加、修改或隐藏特性、属性和事件等特征,动态扩展与类型或对象关联的类型信息。 可以有多个类型说明提供程序类向单个 TypeDescriptor提供元数据。
可通过两种方式将 关联 TypeDescriptionProvider 到 TypeDescriptor:
在设计时,可以为目标类分配适当的 TypeDescriptionProviderAttribute 标记。
在运行时,当可以调用 类的TypeDescriptor其中一个AddProvider方法时。 这些重载的方法需要目标对象或其类类型。
类 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) |
获取指定的组件的名称,如果指定的组件没有名称,则为 |
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) |
适用于
另请参阅
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈