.NET Framework 2.0
其他版本

提供类上的属性的抽象化。

命名空间:System.ComponentModel
程序集:System(在 system.dll 中)

语法

C#
C++
VB

[ComVisibleAttribute(true)]
public abstract class PropertyDescriptor : MemberDescriptor

J#
/** @attribute ComVisibleAttribute(true) */
public abstract class PropertyDescriptor extends MemberDescriptor

JScript
ComVisibleAttribute(true)
public abstract class PropertyDescriptor extends MemberDescriptor

备注

属性的说明由名称、其特性、与该属性关联的组件类和该属性的类型组成。

PropertyDescriptor 提供以下属性和方法:

  • Converter 包含此属性的 TypeConverter。

  • IsLocalizable 指示该属性是否应该本地化。

  • GetEditor 返回指定类型的编辑器。

PropertyDescriptor 还提供以下 abstract 属性和方法:

  • ComponentType 包含该属性绑定到的组件的类型。

  • IsReadOnly 指示该属性是否是只读的。

  • PropertyType 获取属性的类型。

  • CanResetValue 指示重置组件是否会更改该组件的值。

  • GetValue 返回组件上属性的当前值。

  • ResetValue 重置组件属性的值。

  • SetValue 将组件的值设置为一个不同的值。

  • ShouldSerializeValue 指示是否需要持久保存该属性的值。

通常,abstract 成员是通过反射实现的。有关反射的更多信息,请参见 反射 中的主题。

注意

应用于此类的 HostProtectionAttribute 属性 (Attribute) 具有以下 Resources 属性 (Property) 值:SharedState。HostProtectionAttribute 不影响桌面应用程序(桌面应用程序一般通过双击图标,键入命令或在浏览器中输入 URL 启动)。有关更多信息,请参见 HostProtectionAttribute 类或 SQL Server 编程和宿主保护属性。

示例

下面的代码示例是基于 PropertyDescriptorCollection 类中的示例生成的。该示例输出文本框中某个按钮的文本信息(类别、说明、显示名称)。它假定已在窗体上实例化 button1 和 textbox1

C#
C++
VB

// Creates a new collection and assign it the properties for button1.
PropertyDescriptorCollection properties = TypeDescriptor.GetProperties(button1);// Sets an PropertyDescriptor to the specific property.
System.ComponentModel.PropertyDescriptor myProperty = properties.Find("Text", false);// Prints the property and the property description.
textBox1.Text = myProperty.DisplayName+ '\n' ;
textBox1.Text += myProperty.Description + '\n';
textBox1.Text += myProperty.Category + '\n';

J#
// Creates a new collection and assign it the properties for button1.
PropertyDescriptorCollection properties = TypeDescriptor.GetProperties(button1);
// Sets an PropertyDescriptor to the specific property.
System.ComponentModel.PropertyDescriptor myProperty = properties.Find("Text", false);
// Prints the property and the property description.
textBox1.set_Text(myProperty.get_DisplayName() + 'n');
textBox1.set_Text(textBox1.get_Text() + myProperty.get_Description() + '\n');
textBox1.set_Text(textBox1.get_Text() + myProperty.get_Category()+ '\n');

继承层次结构

System.Object 
   System.ComponentModel.MemberDescriptor 
    System.ComponentModel.PropertyDescriptor
       System.ComponentModel.TypeConverter.SimplePropertyDescriptor 

线程安全

此类型的任何公共静态(Visual Basic 中的 Shared)成员都是线程安全的,但不保证所有实例成员都是线程安全的。

平台

Windows 98、Windows 2000 SP4、Windows CE、Windows Millennium Edition、Windows Mobile for Pocket PC、Windows Mobile for Smartphone、Windows Server 2003、Windows XP Media Center Edition、Windows XP Professional x64 Edition、Windows XP SP2、Windows XP Starter Edition

.NET Framework 并不是对每个平台的所有版本都提供支持。有关受支持版本的列表,请参见系统要求。

版本信息

.NET Framework

受以下版本支持:2.0、1.1、1.0

.NET Compact Framework

受以下版本支持:2.0、1.0

请参见

参考

PropertyDescriptor 成员
System.ComponentModel 命名空间
MemberDescriptor 类
Attribute
DefaultValueAttribute 类

PropertyDescriptor 类相关推荐

  1. 内省、JavaBean、PropertyDescriptor类、Introspector类、BeanUtils工具包、注解、Rentention、Target、注解的基本属性和高级属性...

    内省.JavaBean.PropertyDescriptor类.Introspector类.BeanUtils工具包.注解.Rentention.Target.注解的基本属性和高级属性 本文转载自:h ...

  2. java反射--PropertyDescriptor类:(属性描述器)、Introspector类

    JAVA中反射机制(JavaBean的内省与BeanUtils库) 内省(Introspector) 是Java 语言对JavaBean类属性.事件的一种缺省处理方法. JavaBean是一种特殊的类 ...

  3. java bean的反射类_JAVA中反射机制五(JavaBean的内省与BeanUtils库)

    内省(Introspector) 是Java 语言对JavaBean类属性.事件的一种缺省处理方法. JavaBean是一种特殊的类,主要用于传递数据信息,这种类中的方法主要用于访问私有的字段,且方法 ...

  4. Java 编程问题:七、Java 反射类、接口、构造器、方法和字段

    原文:Java Coding Problems 协议:CC BY-NC-SA 4.0 贡献者:飞龙 本文来自[ApacheCN Java 译文集],自豪地采用谷歌翻译. 本章包括涉及 Java 反射 ...

  5. java PropertyDescriptor的用法

    1.作用域 PropertyDescriptor中文叫属性描述器,是jiava JavaBean的内省与BeanUtils库 JavaBean是一种特殊的类,主要用于传递数据信息,这种类中的方法主要用 ...

  6. Java中PropertyDescriptor用法

    PropertyDescriptor 类表示 JavaBean 类通过存储器导出一个属性. 构造方法有: PropertyDescriptor(String propertyName, Class&l ...

  7. PropertyDescriptor

    package Demo; /**  * 在类UserInfo中有属性userName,我们可以通过getUserName和setUserName得到其值和设置新值  * 通过getUserName/ ...

  8. Java利用PropertyDescriptor获取属性的 getter/setter 方法

    PropertyDescriptor类: PropertyDescriptor类表示JavaBean类通过存储器导出一个属性.主要方法:     1. getReadMethod(),获得用于读取属性 ...

  9. 通过PropertyDescriptor反射获取属性的 getter/setter 方法

              Java类中的私有的(private)属性是获取不到的(即使使用继承依然获取不到),那如果非要获取私有属性的值怎么办呢?一般的做法是将该java类封装称为一个JavaBean,即封 ...

最新文章

  1. Error in do_one(nmeth) : NA/NaN/Inf in foreign function call (arg 1)
  2. golang key map 所有_Golang面试知识点总结
  3. 前端学习(2082):const得使用和注意点
  4. 竞赛|数据竞赛Top解决方案开源整理-科大讯飞AI营销算法、阿里妈妈搜索广告、腾讯广告算法、搜狗的用户画像
  5. 我必须要吐槽,你们的数据管理都是错的,这才是规划和产出
  6. 【Flume】Flume简单介绍
  7. mysql集群搭建方案对比
  8. 在线考试系统微信小程序的实现(一)
  9. connect() to unix:/home/tmp/myproject.sock failed (2: No such file or directory)
  10. java设计课堂派的教师端
  11. 设计求二叉树高度的算法
  12. 芯片丨英特尔拟收购初创公司Barefoot Networks 后者曾获腾讯阿里投资
  13. 大数据概论、大数据概念、大数据特点(4V)、Volume(大量)、Velocity(高速)、Variety(多样)、Value(低价值密度)、大数据应用场景、大数据发展前景、大数据部门间业务流程分析
  14. C++ Parent和Child继承分析
  15. muse-ui.css_Muse UI:适用于Vuejs 2.0的Material Design UI库
  16. 解决“手机能胜场使用校园网 笔记本电脑连接不上校园网或者连接上不可用”的问题
  17. 计算机网络基础 IP头部报文;IP的分片;
  18. 机械电子方向的一点心得
  19. 史上最清晰的红黑树讲解(上)(转自CarpenterLee,纯学习用)
  20. VMware Workstation 16.2.5 Pro Unlocker OEM BIOS for Linux

热门文章

  1. 光标跟随(Cursor following)
  2. MuMu模拟器+Edge浏览器:Android原生APP嵌入的H5页面元素定位
  3. 如何在AppStore中取消正在审核的App
  4. Json所需Jar包下载
  5. 计算机组成原理常见面试题目总结,含答案
  6. 中国十米跳台失利,企业、田亮、国家三输的结局
  7. 01 如何设置远程机器的转发
  8. 详解神经网络的基本原理
  9. 黑五电子邮件营销最全指南!
  10. 淮海工学院计算机考试报名,淮海工学院-江苏计算机等级考试网.DOC