Пакет | mx.collections |
Класс | public class GroupingCollection2 |
Наследование | GroupingCollection2 HierarchicalData EventDispatcher Object |
Реализует | IGroupingCollection2 |
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 4 |
Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Примечание. В предыдущей версии Flex использовался класс GroupingCollection с элементом управления AdvancedDataGrid. Класс GroupingCollection2 является новым для Flex 4 и обеспечивает лучшую производительность, чем GroupingCollection.
Для заполнения элемента управления AdvancedDataGrid группированными данными следует создать экземпляр класса GroupingCollection2 из плоских данных и передать его поставщику данных элемента управления AdvancedDataGrid. Для указания полей группировки плоских данных следует передать экземпляр группировки в свойство GroupingCollection2.grouping
. Экземпляр группировки содержит экземпляры массива GroupingField, по одному для каждого поля группировки.
В следующем примере для определения двух полей группировки «Регион» и «Территория» используется класс GroupingCollection2.
<mx:AdvancedDataGrid id="myADG" <mx:dataProvider> <mx:GroupingCollection2 id="gc" source="{dpFlat}"> <mx:grouping> <mx:Grouping> <mx:GroupingField name="Region"/> <mx:GroupingField name="Territory"/> </mx:Grouping> </mx:grouping> </mx:GroupingCollection2> </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Скрыть синтаксис MXML
<mx.GroupingCollection2>
inherits all the tag attributes of its superclass,
and defines the following tag attributes:
<mx:GroupingCollection2 Properties grouping="No default" source="No default" summaries="No default" />
Свойство MXML по умолчаниюgrouping
Связанные элементы API
Свойство | Определено | ||
---|---|---|---|
childrenField : String
Указывает имя поля, используемое для обнаружения объектов нижестоящих элементов в элементе данных. | HierarchicalData | ||
constructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта. | Object | ||
grouping : Grouping
Указывает экземпляр группировки, примененный к исходным данным. | GroupingCollection2 | ||
source : Object [переопределить]
Исходная коллекция, содержащая группируемые плоские данные. | GroupingCollection2 | ||
summaries : Array
Массив экземпляров SummaryRow, определяющих любые сводки данных корневого уровня. | GroupingCollection2 |
Свойство | Определено | ||
---|---|---|---|
timer : flash.utils:Timer
Таймер, связанный с операцией асинхронного обновления. | GroupingCollection2 |
Метод | Определено | ||
---|---|---|---|
Конструктор. | GroupingCollection2 | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Регистрирует объект прослушивателя события на объекте EventDispatcher для получения прослушивателем уведомления о событии. | EventDispatcher | ||
Обновление, выполняемое асинхронно, отменяет операцию обновления и останавливает формирование групп. | GroupingCollection2 | ||
Возвращает значение true, если узел может содержать нижестоящие элементы. | HierarchicalData | ||
Посылает событие в поток событий. | EventDispatcher | ||
Возвращает объект, представляющий нижестоящие элементы узла. | HierarchicalData | ||
Возвращает данные из узла. | HierarchicalData | ||
[переопределить]
Если установлено свойство grouping возвращается значение super.source, в противном случае – экземпляр ICollectionView, ссылающийся на super.source. | GroupingCollection2 | ||
Возвращает значение true, если узел имеет нижестоящие элементы. | HierarchicalData | ||
Проверяет, имеет ли объект EventDispatcher прослушиватели, зарегистрированные для определенного типа события. | EventDispatcher | ||
Показывает, определено ли заданное свойство для объекта. | Object | ||
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра. | Object | ||
Показывает наличие заданного свойства и его перечисляемость. | Object | ||
Применяет группировку к коллекции. | GroupingCollection2 | ||
Удаляет прослушиватель из объекта EventDispatcher. | EventDispatcher | ||
Задает доступность динамического свойства для операций цикла. | Object | ||
Возвращает строковое представление этого объекта, отформатированного в соответствии со стандартами, принятыми для данной локали. | Object | ||
Возвращает строковое представление заданного объекта. | Object | ||
Возвращает элементарное значение заданного объекта. | Object | ||
Проверяет, зарегистрирован ли прослушиватель события для указанного типа события с данным объектом EventDispatcher или любым его предшественником. | EventDispatcher |
Метод | Определено | ||
---|---|---|---|
Возвращает вышестоящий узел. | GroupingCollection2 |
grouping | свойство |
grouping:Grouping
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Указывает экземпляр группировки, примененный к исходным данным. Настройка свойства grouping
не приводит к автоматическому обновлению представления, поэтому после установки этого свойства следует вызвать метод refresh()
.
Реализация
public function get grouping():Grouping
public function set grouping(value:Grouping):void
Связанные элементы API
source | свойство |
source:Object
[переопределить] Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Исходная коллекция, содержащая группируемые плоские данные. Источник, который не является коллекцией, автоматически преобразуется в коллекцию.
Реализация
override public function get source():Object
override public function set source(value:Object):void
summaries | свойство |
public var summaries:Array
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Массив экземпляров SummaryRow, определяющих любые сводки данных корневого уровня. Следует указать один или несколько экземпляров SummaryRow для определения сводки данных, как это показано в следующем примере:
<mx:AdvancedDataGrid id="myADG" width="100%" height="100%" initialize="gc.refresh();"> <mx:dataProvider> <mx:GroupingCollection2 id="gc" source="{dpFlat}"> <mx:summaries> <mx:SummaryRow summaryPlacement="last"> <mx:fields> <mx:SummaryField2 dataField="Actual" label="Min Actual" summaryOperation="MIN"/> <mx:SummaryField2 dataField="Actual" label="Max Actual" summaryOperation="MAX"/> </mx:fields> </mx:SummaryRow> </mx:summaries> <mx:Grouping> <mx:GroupingField name="Region"/> <mx:GroupingField name="Territory"/> </mx:Grouping> </mx:GroupingCollection2> </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>
Связанные элементы API
timer | свойство |
protected var timer:flash.utils:Timer
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Таймер, связанный с операцией асинхронного обновления. Можно использовать для изменения временного интервала, приостановки обновления или выполнения других действий. Значение по умолчанию для свойства delay
экземпляра таймера равно 1, что соответствует 1 миллисекунде.
GroupingCollection2 | () | Конструктор |
public function GroupingCollection2()
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Конструктор.
cancelRefresh | () | метод |
public function cancelRefresh():void
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Обновление, выполняемое асинхронно, отменяет операцию обновления и останавливает формирование групп. Этот метод отменяет обновление, если оно инициируется только вызовом метода refresh()
с аргументом asynch
true
, соответствующим асинхронному обновлению.
getParent | () | метод |
protected function getParent(node:Object):*
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Возвращает вышестоящий узел. Вышестоящий элемент узла верхнего уровня содержит значение null
.
Параметры
node:Object — Object, определяющий узел.
|
* — Вышестоящий узел, содержащий данный узел в качестве нижестоящего, для узла верхнего уровня используется значение null , и undefined , если вышестоящий элемент определить невозможно.
|
getRoot | () | метод |
override public function getRoot():Object
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Если установлено свойство grouping
возвращается значение super.source
, в противном случае – экземпляр ICollectionView, ссылающийся на super.source
.
Object — Возвращаемый объект.
|
refresh | () | метод |
public function refresh(async:Boolean = false, dispatchCollectionEvents:Boolean = false):Boolean
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Применяет группировку к коллекции. Коллекция не обнаруживает изменений группы автоматически, поэтому необходимо вызвать метод refresh()
для обновления коллекции после установки свойств grouping
, source
или summaries
. Метод refresh()
также можно вызвать для изменения GroupingField коллекции, например путем изменения свойств caseInsensitive
, compareFunction
или groupingFunction
.
Метод refresh()
можно применять синхронно или асинхронно.
При синхронном вызове метода refresh()
все группы и сводки обновляются вместе до получения результата вызова метода. Это означает, что приложение не может выполнить другие операции обработки во время выполнения вызова. Клиент должен ожидать события CollectionEvent со значением свойства kind
, равным CollectionEventKind.REFRESH
, для обеспечения завершения методаrefresh()
.
При асинхронном обновлении все группы и сводки обновляются индивидуально. Метод refresh()
возвращает результат вызова до обновления групп и сводок, поэтому приложение может продолжать процесс выполнения. Кроме того, элемент управления обновляется во время процесса обновления, поэтому пользователь может продолжать работать с ним.
Затраты ресурсов на индивидуальное обновление групп и сводок приводят к тому, что асинхронное обновление занимает больше времени, чем синхронное. Однако если наборы данных большие, во время обновления можно продолжать работу с приложением.
Параметры
async:Boolean (default = false ) — Значение true определяет асинхронное обновление. Значение по умолчанию равно false , обозначая синхронное обновление.
| |
dispatchCollectionEvents:Boolean (default = false ) — Если значение true , события отправляются, когда группы сформированы. Для лучшей производительности установите значение на false . Если значение true , тогда события отправляются, когда группы и сводки синхронно вычислены для обновления элемента управления. Примечание. Если аргумент async имеет значение true , то dispatchCollectionEvents всегда устанавливается на true . По умолчанию он имеет значение false , что означает, никакое событие не будет отправлено.
|
Boolean — Значение равно true при завершении метода refresh() и false , если обновление остается незавершенным, т. е. элементы по-прежнему могут находиться в состоянии ожидания.
|
Tue Jun 12 2018, 11:34 AM Z