XtraEditors库提供了大量编辑类控件,使我们能轻松改变程序里各式编辑器的样式风格。在XtraEditors库里主要提供了两类组件:Editor和Control。
XtraEditors库的Editor的主要特性是:
l 提供数据绑定
l 全都可以作为独立控件或作为XtraGrid,XtraTreeList, XtraBars容器内的嵌入位置的编辑器
l 由于它们都是BaseEdit的后裔,故拥有统一的可视风格和提示机制
如图1是BaseEdit后裔类:

图1
XtraEditors库的Control只能作为独立控件,即他们不能作为容器控件的嵌入位置编辑器,它们都是BaseStyleControl的后裔,拥有统一的可视风格和行为特性。
下图2是二者的继承层次:

图2
关于Editor库和RepositoryItem
每个能作为嵌入位置编辑器的Editor都有一个Properties属性,它存储了editor的设置和事件句柄。该属性代表了RepositoryItem的一个后裔类的实例。例如,一个DateEdit(时间编辑器)提供了DateEdit.Properties属性,该属性是RepositoryItemDateEdit类型。继承自RepositoryItem的类叫库对象,一个库对象可以作为编辑器的一部分(通过编辑器的Properties属性访问),但库对象也可以独立存在。
editor和RepositoryItem的关系如图3所示:

图3
理解了上述几个关系,在XAF中使用XtraEditors库就容易多了,具体例子参考XAF帮助文档的Task-BasedHelp/PropertyEditors类别下几个事例。
XtraEditors库提供了丰富的编辑控件,支持数据绑定,并能在多种容器内作为编辑器使用。库分为Editor和Control两大类,前者包括BaseEdit的派生类,后者为BaseStyleControl的派生类。Editor类还能通过其Properties属性与RepositoryItem建立联系,实现更灵活的配置。
1963

被折叠的 条评论
为什么被折叠?



