Chinaunix首页 | 论坛 | 博客
  • 博客访问: 30466030
  • 博文数量: 708
  • 博客积分: 12163
  • 博客等级: 上将
  • 技术积分: 8240
  • 用 户 组: 普通用户
  • 注册时间: 2007-12-04 20:59
文章分类

全部博文(708)

分类: 系统运维

2008-08-27 18:27:56

创建多个汇总

您可以在单个GroupingField实例中指定多个SummaryRow实例。在下面的示例中,我们定义如下字段为Region组创建汇总数据:Min Actual、Max Actual、Min Estimate和Max Estimate:

 version="1.0" encoding="utf-8"?>
xmlns:mx="">
>

import mx.collections.ArrayCollection;
include "SimpleFlatData.as"
]]>

>

id="myADG"
width="100%" height="100%"
initialize="gc.refresh();">

>

id="gc" source="{dpFlat}">
>

name="Region">
summaryPlacement="group">
operation="MIN"
dataField="Actual" label="Min Actual"/>

operation="MAX"
dataField="Actual" label="Max Actual"/>

>

summaryPlacement="group">
operation="MIN"
dataField="Estimate" label="Min Estimate"/>

operation="MAX"
dataField="Estimate" label="Max Estimate"/>

>

>

name="Territory"/>
>

>

>

>

dataField="Region"/>
dataField="Territory_Rep"
headerText="Territory Rep"/>

dataField="Actual"/>
dataField="Estimate"/>
dataField="Min Actual"/>
dataField="Max Actual"/>
dataField="Min Estimate"/>
dataField="Max Estimate"/>
>

>

>

创建列分组

您可以使用列分组将多列归集到一个单一列表头下,如下所示:

在该示例中,您可以提供给数据表格以扁平数据,然后对Actual和Estimate列归组到一个单一的名称为Revenues的列中。

要在一个AdvancedDataGrid控件中进行列分组,您必须如下做:

  • 使用AdvancedDataGrid.groupedColumns属性而不是AdvancedDataGrid.columns属性来标识列。
  • 使用AdvancedDataGridColumnGroup来指定分组。

下面是前面示意图中的AdvancedDataGrid控件的代码实现:

 version="1.0"?>
xmlns:mx="">
>

import mx.collections.ArrayCollection;
include "SimpleFlatData.as";
]]>

>

id="myADG"
dataProvider="{dpFlat}"
width="100%" height="100%">

>

dataField="Region"/>
dataField="Territory"/>
dataField="Territory_Rep"
headerText="Territory Rep"/>

headerText="Revenues">
dataField="Actual"/>
dataField="Estimate"/>
>

>

>

>

groupedColumns属性包括AdvancedDataGridColumn类和AdvancedDataGridColumnGroup类的实例。AdvancedDataGridColumn类的实例在控件中显示为单独的一列。而所有在AdvancedDataGridColumnGroup实例中指定的列将作为已分组的列显示在一起。

您可以给控件添加多个分组,下面的示例增加名称为Area和Revenue的两个分组:

 version="1.0" encoding="utf-8"?>
xmlns:mx="">
>

import mx.collections.ArrayCollection;
include "SimpleFlatData.as";
]]>

>

id="myADG"
dataProvider="{dpFlat}"
width="100%" height="100%">

>

dataField="Territory_Rep"
headerText="Territory Rep"/>

headerText="Area">
dataField="Region"/>
dataField="Territory"/>
>

headerText="Revenues">
dataField="Actual"/>
dataField="Estimate"/>
>

>

>

>

您还可以将分组嵌套以让一个分组列包含多个分组,如下所示:

 version="1.0" encoding="utf-8"?>
xmlns:mx="" layout="vertical">
>

import mx.collections.ArrayCollection;
include "SimpleFlatData.as";
]]>

>

id="myADG"
dataProvider="{dpFlat}"
width="100%" height="100%">

>

dataField="Territory_Rep"
headerText="Territory Rep"/>

headerText="All Groups">
headerText="Area">
dataField="Region"/>
dataField="Territory"/>
>

headerText="Revenues">
dataField="Actual"/>
dataField="Estimate"/>
>

>

>

>

>

在分组中拖放列

By default, you can drag the columns in a group within the group to reposition them. You can also drag the entire group to reposition it in the AdvancedDataGrid control. 默认情况下,您可以拖动分组中的各列以在分组中重新放置它们。您也可以拖动整个分组以在AdvancedDataGrid控件中重新放置它们。

要禁用某一分组中所有列的拖动,设置AdvancedDataGridColumnGroup.childrenDragEnabled属性为false。要禁用单个列的拖动,设置AdvancedDataGridColumn.dragEnabled属性为false。

阅读(3420) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2009-07-17 16:39:14

SimpleFlatData.as 从哪里看啊?我想看看你这个文件里,那个dpFlat是怎么写的