AdvancedDataGrid综合应用——动态生成

最近的工作用到了AdvancedDataGrid,关于它的用法,网上已有其中文帮助,就不再说细说。我们将主要用一个实例来讲一讲它的综合应用,这次我们将学习怎样动态生成AdvancedDataGrid。

其实,要做到动态生成AdvancedDataGrid也并非易事。首先得定义哪些部分需要动态生成,比如说AdvancedDataGrid的数据提供、列宽、与列关联的字段或属性、列的标题文本等等。而这些东东又不能Hardcode在AS中,要从外部数据库或数据文件读取。不过一旦考虑到了这些东东,接下来的编码就不难了。

我们用一个XML文件(profile.xml)来保存配置,包括分组字段、数据提供源的URL用各列的Schema。另一个XML文件(student.xml)用来保存数据提供所需数据。当profile.xml加载完毕后,AdvancedDataGrid初始化各列,并开始加载student.xml,加载完毕后得到数据提供并对AdvancedDataGrid进行分组。

要分组的数据提供源最常见的是层次结构数据和平面数据,我们此处就用的是平面数据。分组代码很简单,注意最后一定要用refresh方法对该视图应用分组。

不知大家注意到没有,生成的AdvancedDataGrid的子数据项也会显示分组字段数据,这是因为平面数据在自动转换成层次结构时没有设置字段名称。该字段名称默认为GroupLabel,因此我们只要在将profile.xml中将第一列的dataFiled指定为GroupLabel就可以了,当然也可以通过设置Grouping的label属性来实现。

点击此处查看本实例的效果,点击此处下载本实例的源码。

下回我们将讲一讲如何自定义AdvancedDataGrid的样式。

发表评论