1、概述
在WinForm应用程序中,PropertyGrid提供用于浏览、编辑对象的属性字段的UI。您也可以把它看成一个容器,因为它继承了ContainerControl类,因此在编辑输入的时候,可能是系统控件(如字体、颜色对话框)或者用户控件(如下面举例的用于Enum类型输入的用户控件)。
2、简单使用
PropertyGrid的使用极其简单,从工具栏拖动PropertyGrid到一个窗体上,然后新建包含属性定义的类。调用时,new一个类的实例赋值给PropertyGrid的SelectedObject属性即可。
3、属性更改后的通知
属性更改后要通知客户端,可以给属性所属的类实现INotifyPropertyChanged接口。该接口定义了一个类型为PropertyChangedEventHandler的PropertyChanged事件,定义类的时候需要实现该接口。调用的时候,使用类的实例为PropertyChanged事件注册执行事件的方法XXMethod,当属性变化时,此方法即执行。当然,前提是在属性定义的Set索引器里,要触发PropertyChanged事件,把变更的属性的属性名当参数传给客户,客户根据属性名和类的实例,即可使用反射技术获得更新后的属性。
4、源码
http://files.cnblogs.com/gmth/PropertyGridTest.rar