(仅限 Flex 数据可视化组件)
mx.collections
public class GroupingCollection
继承GroupingCollection Inheritance HierarchicalData Inheritance EventDispatcher Inheritance Object
实现 IGroupingCollection

使用 GroupingCollection 类,您可以在平面数据中创建要显示在 AdvancedDataGrid 控件中的分组数据。在平面数据中创建 GroupingCollection 实例时,可以指定用于创建层次结构的数据的一个或多个字段。

要使用分组数据填充 AdvancedDataGrid 控件,可以在平面数据中创建 GroupingCollection 类的一个实例,然后将该 GroupingCollection 实例传递给 AdvancedDataGrid 控件的数据提供程序。要指定平面数据的分组字段,可将一个 Grouping 实例传递给 GroupingCollection.grouping 属性。Grouping 实例包含 GroupingField 实例 Array,每个分组字段一个。

以下示例使用 GroupingCollection 类定义两个分组字段:Region 和 Territory。

<mx:AdvancedDataGrid id="myADG"    
    <mx:dataProvider> 
      <mx:GroupingCollection id="gc" source="{dpFlat}"> 
        <mx:grouping> 
          <mx:Grouping> 
            <mx:GroupingField name="Region"/> 
            <mx:GroupingField name="Territory"/> 
          </mx:Grouping> 
        </mx:grouping> 
      </mx:GroupingCollection> 
    </mx:dataProvider>  
     
    <mx:columns> 
      <mx:AdvancedDataGridColumn dataField="Region"/> 
      <mx:AdvancedDataGridColumn dataField="Territory"/> 
      <mx:AdvancedDataGridColumn dataField="Territory_Rep"/> 
      <mx:AdvancedDataGridColumn dataField="Actual"/> 
      <mx:AdvancedDataGridColumn dataField="Estimate"/> 
    </mx:columns> 
  </mx:AdvancedDataGrid>

MXML 语法expanded隐藏 MXML 语法
The <mx.GroupingCollection> inherits all the tag attributes of its superclass, and defines the following tag attributes:

  <mx:GroupingCollection
  Properties 
    grouping="No default"
    source="No default"
    summaries="No default"
  />
  

默认 MXML 属性grouping

另请参见

mx.controls.AdvancedDataGrid
mx.collections.Grouping
mx.collections.GroupingField


公共属性
 属性定义方
 InheritedchildrenField : String
指示在数据项中检测子对象所用的字段名。
HierarchicalData
 Inheritedconstructor : Object
对类对象或给定对象实例的构造函数的引用。
Object
  grouping : Grouping
指定应用于源数据的 Grouping 实例。
GroupingCollection
 Inheritedprototype : Object
[静态] 对类或函数对象的原型对象的引用。
Object
  source : Object
包含要分组的平面数据的源集合。
GroupingCollection
  summaries : Array
定义任意根级别数据摘要的 SummaryRow 实例数组。
GroupingCollection
受保护的属性
 属性定义方
  timer : Timer
与异步刷新操作相关联的计时器。
GroupingCollection
公共方法
 方法定义方
  
构造函数。
GroupingCollection
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。
EventDispatcher
  
如果异步执行刷新,请取消刷新操作并停止构建组。
GroupingCollection
 Inherited
如果该节点可以包含子项,则返回 true。
HierarchicalData
 Inherited
将事件调度到事件流中。
EventDispatcher
 Inherited
返回表示节点子项的 Object。
HierarchicalData
 Inherited
返回节点中的数据。
HierarchicalData
  
如果已设置分组属性,则返回 super.source;如果未设置,则返回引用 super.source 的 ICollectionView 实例。
GroupingCollection
 Inherited
如果该节点包含子项,则返回 true。
HierarchicalData
 Inherited
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。
EventDispatcher
 Inherited
指示对象是否已经定义了指定的属性。
Object
 Inherited
指示 Object 类的实例是否在指定为参数的对象的原型链中。
Object
 Inherited
指示指定的属性是否存在、是否可枚举。
Object
  
refresh(async:Boolean = false):Boolean
对该视图应用分组。
GroupingCollection
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
从 EventDispatcher 对象中删除侦听器。
EventDispatcher
 Inherited
设置循环操作动态属性的可用性。
Object
 Inherited
返回指定对象的字符串表示形式。
Object
 Inherited
返回指定对象的原始值。
Object
 Inherited
检查是否用此 EventDispatcher 对象或其任何始祖为指定事件类型注册了事件侦听器。
EventDispatcher
受保护的方法
 方法定义方
  
返回节点的父项。
GroupingCollection
事件
 事件 摘要 定义方
 Inherited[广播事件] Flash Player 或 AIR 应用程序获得操作系统焦点并变为活动状态时将调度此事件。EventDispatcher
 Inherited[广播事件] Flash Player 或 AIR 应用程序失去操作系统焦点并变为非活动状态时将调度此事件。EventDispatcher
属性详细信息
grouping属性
grouping:Grouping  [读写]

指定应用于源数据的 Grouping 实例。设置 grouping 属性不会自动刷新视图,因此您必须在设置此属性后调用 refresh() 方法。



实现
    public function get grouping():Grouping
    public function set grouping(value:Grouping):void

另请参见

source属性 
source:Object  [读写]

包含要分组的平面数据的源集合。如果源不是一个集合,它将自动封装在一个集合中。



实现
    public function get source():Object
    public function set source(value:Object):void
summaries属性 
public var summaries:Array

定义任意根级别数据摘要的 SummaryRow 实例数组。指定一个或多个 SummaryRow 实例以定义数据摘要,如以下示例所示:

<mx:AdvancedDataGrid id="myADG" 
         width="100%" height="100%" 
         initialize="gc.refresh();">        
         <mx:dataProvider>
             <mx:GroupingCollection id="gc" source="{dpFlat}">
                 <mx:summaries>
                     <mx:SummaryRow summaryPlacement="last">
                         <mx:fields>
                             <mx:SummaryField dataField="Actual" 
                                 label="Min Actual" operation="MIN"/>
                             <mx:SummaryField dataField="Actual" 
                                 label="Max Actual" operation="MAX"/>
                         </mx:fields>
                       </mx:SummaryRow>
                     </mx:summaries>
                 <mx:Grouping>
                     <mx:GroupingField name="Region"/>
                     <mx:GroupingField name="Territory"/>
                 </mx:Grouping>
             </mx:GroupingCollection>
         </mx:dataProvider>        
         
         <mx:columns>
             <mx:AdvancedDataGridColumn dataField="Region"/>
             <mx:AdvancedDataGridColumn dataField="Territory_Rep"
                 headerText="Territory Rep"/>
             <mx:AdvancedDataGridColumn dataField="Actual"/>
             <mx:AdvancedDataGridColumn dataField="Estimate"/>
             <mx:AdvancedDataGridColumn dataField="Min Actual"/>
             <mx:AdvancedDataGridColumn dataField="Max Actual"/>
         </mx:columns>
      </mx:AdvancedDataGrid>

另请参见

timer属性 
protected var timer:Timer

与异步刷新操作相关联的计时器。您可以使用它来更改计时间隔、暂停刷新或执行其它操作。Timer 实例的 delay 属性的默认值为 1,对应于 1 毫秒。

构造函数详细信息
GroupingCollection()构造函数
public function GroupingCollection()

构造函数。

方法详细信息
cancelRefresh()方法
public function cancelRefresh():void

如果异步执行刷新,请取消刷新操作并停止构建组。与异步刷新相对应,此方法仅取消由调用带有 true 参数的 refresh() 方法启动的刷新。

getParent()方法 
protected function getParent(node:Object):*

返回节点的父项。顶级节点的父项为 null

参数

node:Object — 定义该节点的 Object。

返回
* — 包含作为子项的节点的父节点,如果为顶级节点,则返回 null;如果无法确定父节点,则返回 undefined
getRoot()方法 
override public function getRoot():Object

如果已设置 grouping 属性,则返回 super.source;如果未设置,则返回引用 super.source 的 ICollectionView 实例。

返回
Object — 要返回的对象。
refresh()方法 
public function refresh(async:Boolean = false):Boolean

对该视图应用分组。IGroupingCollection 不会自动检测对组进行的更改,因此设置 group 属性后,必须调用 refresh() 方法更新该视图。

通过调用 refresh(true) 可异步应用 refresh() 方法。

如果同步调用 refresh(),客户端应等待 kind 属性值设置为 CollectionEventKind.REFRESH 的 CollectionEvent 事件,以确保完成 refresh() 方法。

参数

async:Boolean (default = false) — 如果为 true,则定义为异步刷新。默认情况下,为 false,指示同步刷新。

返回
Boolean — 如果 refresh() 方法已完成,则为 true;如果刷新尚未完成,则为 false,这样可以表示这些项目仍未处理。