Пакет | mx.collections |
Класс | public class GroupingField |
Наследование | GroupingField Object |
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Для заполнения элемента управления AdvancedDataGrid группированными данными следует создать экземпляр класса GroupingCollection из плоских данных и передать его поставщику данных элемента управления AdvancedDataGrid. Для указания полей группировки плоских данных следует передать экземпляр группировки в свойство GroupingCollection.grouping
. Экземпляр группировки содержит экземпляры массива GroupingField, по одному для каждого поля группировки.
В следующем примере используется класс группировки для определения двух полей группировки: «Регион» и «Территория».
<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Скрыть синтаксис MXML
<mx.GroupingField>
inherits all the tag attributes of its superclass,
and defines the following tag attributes:
<mx:GroupingField Properties caseInsensitive="false|true" compareFunction="No default" descending="false|true" groupingFunction="No default" groupingObjectFunction="No default" name="null" numeric="false|true" summaries="No default" />
Свойство MXML по умолчаниюsummaries
Связанные элементы API
Свойство | Определено | ||
---|---|---|---|
caseInsensitive : Boolean
Следует установить значение равным true, если сортировка для этого поля не должна зависеть от регистра. | GroupingField | ||
compareFunction : Function
Функция, сравнивающая два элемента при сортировке элементов для связанной коллекции. | GroupingField | ||
constructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта. | Object | ||
descending : Boolean
Следует установить значение равным true, если сортировка для этого поля должна происходить в порядке убывания. | GroupingField | ||
groupingFunction : Function
Функция, определяющая метку для этой группы. | GroupingField | ||
groupingObjectFunction : Function
Функция обратного вызова для запуска в каждом узле группы при определении объекта группировки. | GroupingField | ||
name : String
Имя поля для сортировки. | GroupingField | ||
numeric : Boolean
Указывает, что если сортируемое поле содержит числовые значения (Number/int/uint) или строковые представления числовых значений, то устройство сравнения использует числовые сравнение. | GroupingField | ||
summaries : Array
Массив экземпляров SummaryRow, определяющих сводки уровня группы. | GroupingField |
Метод | Определено | ||
---|---|---|---|
GroupingField(name:String = null, caseInsensitive:Boolean = false, descending:Boolean = false, numeric:Boolean = false)
Конструктор. | GroupingField | ||
Показывает, определено ли заданное свойство для объекта. | Object | ||
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра. | Object | ||
Показывает наличие заданного свойства и его перечисляемость. | Object | ||
Задает доступность динамического свойства для операций цикла. | Object | ||
Возвращает строковое представление этого объекта, отформатированного в соответствии со стандартами, принятыми для данной локали. | Object | ||
Возвращает строковое представление заданного объекта. | Object | ||
Возвращает элементарное значение заданного объекта. | Object |
caseInsensitive | свойство |
caseInsensitive:Boolean
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Следует установить значение равным true
, если сортировка для этого поля не должна зависеть от регистра.
Значением по умолчанию является false.
Реализация
public function get caseInsensitive():Boolean
public function set caseInsensitive(value:Boolean):void
compareFunction | свойство |
compareFunction:Function
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Функция, сравнивающая два элемента при сортировке элементов для связанной коллекции. Если указать свойство compareFunction
в объекте группировки, то в компоненте Flex игнорируются любые свойства compareFunction
объектов GroupingField.
Функция сравнения должна иметь следующую подпись:
function myCompare(a:Object, b:Object):int
Эта функция должна возвращать следующие значения:
- -1, если
a
должно появиться передb
в сортированной последовательности; - 0, если
a
равноb
; - 1, если
a
должно появиться послеb
в сортированной последовательности.
Значение по умолчанию представляет собой внутреннюю функцию сравнения, которая может выполнять сравнение строк, чисел или дат в восходящем или нисходящем порядке, с учетом или без учета регистра. Указывать собственную функцию следует только в том случае, если необходим пользовательский алгоритм сравнения. Обычно он применяется только в том только случае, если в отображении используется вычисленное поле.
Реализация
public function get compareFunction():Function
public function set compareFunction(value:Function):void
descending | свойство |
descending:Boolean
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Следует установить значение равным true
, если сортировка для этого поля должна происходить в порядке убывания.
Значением по умолчанию является false.
Реализация
public function get descending():Boolean
public function set descending(value:Boolean):void
groupingFunction | свойство |
public var groupingFunction:Function
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Функция, определяющая метку для этой группы. По умолчанию группа отображает текст для поля в данных, которые соответствуют полю, указанному свойством name
. Однако иногда требуется группировать элементы на основании нескольких полей данных или критерия, не являющегося простым поле строки. В таком случае, определение функции обратного вызова осуществляется с помощью свойства groupingFunction
.
Функция обратного вызова может преобразовать номер месяца в строку месяца или сгруппировать несколько элементов в отдельную группу на основании критериев, отличающихся от фактического значения поля.
Для GroupField подпись метода имеет следующую форму:
groupingFunction(item:Object, field:GroupField):String
Где item
содержит объект элемента данных, а field
– объект GroupField.
groupingFunction
, возвращающую первый символ имени группы, можно записать следующим образом
private function groupFunc(item:Object, field:GroupingField):String { return item[field.name].toString().substr(0, 1); }
groupingObjectFunction | свойство |
public var groupingObjectFunction:Function
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Функция обратного вызова для запуска в каждом узле группы при определении объекта группировки. По умолчанию для узлов группы создается новый объект.
Можно ввести функцию groupingObjectFunction
, предоставляющую соответствующий объект для узлов группы.
Подпись метода:
myGroupObjectFunction(label:String):Object
где в label
содержится значение, которое будет показано для данного узла группы. Функция возвращает объект, который будет использоваться для узлов группы.
groupingObjectFunction
, возвращающую объект, содержащий свойство name со значением Bob, можно записать следующим образом:
private function groupObjFunction(label:String):Object { var obj:Object = {}; obj.name = "Bob"; return obj; }
name | свойство |
numeric | свойство |
numeric:Boolean
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Указывает, что если сортируемое поле содержит числовые значения (Number/int/uint) или строковые представления числовых значений, то устройство сравнения использует числовые сравнение. Если это свойство равно false
, то поля со строковыми представлениями чисел сортируются с использованием сравнения строк, таким образом, 100 предшествует 99, поскольку 1 – более низкое строковое значение чем 9.
Значением по умолчанию является false.
Реализация
public function get numeric():Boolean
public function set numeric(value:Boolean):void
summaries | свойство |
public var summaries:Array
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Массив экземпляров SummaryRow, определяющих сводки уровня группы. Следует указать один или несколько экземпляров SummaryRow для определения сводки данных, как это показано в следующем примере:
<mx:AdvancedDataGrid id="myADG" width="100%" height="100%" initialize="gc.refresh();"> <mx:dataProvider> <mx:GroupingCollection id="gc" source="{dpFlat}"> <mx:Grouping> <mx:GroupingField name="Region"> <mx:summaries> <mx:SummaryRow summaryPlacement="group"> <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:GroupingField> </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>
Связанные элементы API
GroupingField | () | Конструктор |
public function GroupingField(name:String = null, caseInsensitive:Boolean = false, descending:Boolean = false, numeric:Boolean = false)
Язык версии: | ActionScript 3.0 |
Версия продукта: | Flex 3 |
Версии среды выполнения: | Flash Player 9, AIR 1.1 |
Конструктор.
Параметрыname:String (default = null ) — Имя свойства, используемое этим полем для сравнения. Если объект относится к простому типу, следует передать null .
| |
caseInsensitive:Boolean (default = false ) — При сортировке строк сообщает устройству сравнения, следует ли игнорировать регистр значений.
| |
descending:Boolean (default = false ) — Сообщает устройству сравнения, следует ли разместить элементы в порядке убывания.
| |
numeric:Boolean (default = false ) — Сообщает устройству сравнения, следует ли сравнивать элементы сортировки как числа, вместо алфавитного порядка.
|
Tue Jun 12 2018, 11:34 AM Z