Package | mx.collections |
Classe | public class GroupingCollection2 |
Héritage | GroupingCollection2 HierarchicalData EventDispatcher Object |
Implémente | IGroupingCollection2 |
Version du langage: | ActionScript 3.0 |
Version du produit: | Flex 4 |
Versions du moteur d’exécution: | Flash Player 10, AIR 1.5 |
Remarque : dans la version précédente de Flex, vous avez utilisé la classe GroupingCollection avec le contrôle AdvancedDataGrid. La classe GroupingCollection2, une nouveauté de Flex 4, offre de meilleures performances que GroupingCollection.
Pour que des données groupées viennent remplir le contrôle AdvancedDataGrid, créez une instance de la classe GroupingCollection à partir des données à plat, puis transmettez cette instance GroupingCollection au fournisseur de données du contrôle AdvancedDataGrid. Pour spécifier les champs de regroupement des données à plat, transmettez une instance Grouping à la propriété GroupingCollection.grouping
. L’instance Grouping contient un tableau d’instances GroupingField (une par champ de regroupement).
L’exemple suivant utilise la classe GroupingCollection pour définir deux champs de regroupement : Region et Territory.
<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>Syntaxe MXMLMasquer la syntaxe 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" />
Propriété MXML par défautgrouping
Eléments de l’API associés
Propriété | Défini par | ||
---|---|---|---|
childrenField : String
Indique le nom du champ à utiliser pour détecter les objets enfant dans un élément de données. | HierarchicalData | ||
constructor : Object
Référence à l’objet de classe ou à la fonction constructeur d’une occurrence donnée d’un objet. | Object | ||
grouping : Grouping
Spécifie l’instance Grouping appliquée aux données source. | GroupingCollection2 | ||
source : Object [override]
Collection source contenant les données à plat à regrouper. | GroupingCollection2 | ||
summaries : Array
Tableau d’instances SummaryRow définissant un résumé de données au niveau racine. | GroupingCollection2 |
Propriété | Défini par | ||
---|---|---|---|
timer : flash.utils:Timer
Minuteur associé à une opération d’actualisation asynchrone. | GroupingCollection2 |
Méthode | Défini par | ||
---|---|---|---|
Constructeur. | GroupingCollection2 | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Enregistre un objet écouteur d’événement auprès d’un objet EventDispatcher afin que l’écouteur soit averti d’un événement. | EventDispatcher | ||
Si l’actualisation est réalisée de manière asynchrone, l’opération d’actualisation est annulée et la construction des groupes est arrêtée. | GroupingCollection2 | ||
Renvoie true si le nœud peut contenir des enfants. | HierarchicalData | ||
Distribue un événement dans le flux d’événements. | EventDispatcher | ||
Renvoie un objet représentant les enfants du nœud. | HierarchicalData | ||
Renvoie les données issues d’un nœud. | HierarchicalData | ||
[override]
Renvoie super.source si la propriété grouping est définie. Si cette propriété n’est pas définie, renvoie une instance ICollectionView faisant référence à super.source. | GroupingCollection2 | ||
Renvoie true si le nœud contient des enfants. | HierarchicalData | ||
Vérifie si des écouteurs sont enregistrés auprès de l’objet EventDispatcher pour un type spécifique d’événement. | EventDispatcher | ||
Indique si la propriété spécifiée d’un objet est définie. | Object | ||
Indique si une occurrence de la classe Object figure dans la chaîne de prototype de l’objet spécifié en tant que paramètre. | Object | ||
Indique si la propriété spécifiée existe et est énumérable. | Object | ||
Applique le regroupement à la collection. | GroupingCollection2 | ||
Supprime un écouteur de l’objet EventDispatcher. | EventDispatcher | ||
Définit la disponibilité d’une propriété dynamique pour les opérations en boucle. | Object | ||
Renvoie la représentation de chaîne de cet objet, formatée selon les paramètres régionaux en vigueur. | Object | ||
Renvoie la représentation sous forme de chaîne de l’objet spécifié. | Object | ||
Renvoie la valeur primitive de l’objet spécifié. | Object | ||
Vérifie si un écouteur d’événement est enregistré auprès de cet objet EventDispatcher ou de ses ancêtres pour le type d’événement spécifié. | EventDispatcher |
Méthode | Défini par | ||
---|---|---|---|
Renvoie le parent d’un nœud. | GroupingCollection2 |
grouping | propriété |
grouping:Grouping
Version du langage: | ActionScript 3.0 |
Version du produit: | Flex 3 |
Versions du moteur d’exécution: | Flash Player 10, AIR 1.5 |
Spécifie l’instance Grouping appliquée aux données source. Le fait de définir la propriété grouping
n’actualise pas automatiquement la vue. Par conséquent, vous devez appeler la méthode refresh()
après avoir défini cette propriété.
Implémentation
public function get grouping():Grouping
public function set grouping(value:Grouping):void
Eléments de l’API associés
source | propriété |
source:Object
[override] Version du langage: | ActionScript 3.0 |
Version du produit: | Flex 3 |
Versions du moteur d’exécution: | Flash Player 10, AIR 1.5 |
Collection source contenant les données à plat à regrouper. Si la source n’est pas une collection, elle sera automatiquement enveloppée dans une collection.
Implémentation
override public function get source():Object
override public function set source(value:Object):void
summaries | propriété |
public var summaries:Array
Version du langage: | ActionScript 3.0 |
Version du produit: | Flex 3 |
Versions du moteur d’exécution: | Flash Player 10, AIR 1.5 |
Tableau d’instances SummaryRow définissant un résumé de données au niveau racine. Spécifiez une ou plusieurs instances SummaryRow pour définir les résumés de données, comme l’illustre l’exemple suivant :
<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>
Eléments de l’API associés
timer | propriété |
protected var timer:flash.utils:Timer
Version du langage: | ActionScript 3.0 |
Version du produit: | Flex 3 |
Versions du moteur d’exécution: | Flash Player 10, AIR 1.5 |
Minuteur associé à une opération d’actualisation asynchrone. Vous pouvez l’utiliser pour modifier l’intervalle de temporisation, suspendre l’actualisation ou réaliser différentes actions. La valeur par défaut de la propriété delay
de l’instance Timer est 1, ce qui correspond à 1 milliseconde.
GroupingCollection2 | () | Constructeur |
public function GroupingCollection2()
Version du langage: | ActionScript 3.0 |
Version du produit: | Flex 3 |
Versions du moteur d’exécution: | Flash Player 10, AIR 1.5 |
Constructeur.
cancelRefresh | () | méthode |
public function cancelRefresh():void
Version du langage: | ActionScript 3.0 |
Version du produit: | Flex 3 |
Versions du moteur d’exécution: | Flash Player 10, AIR 1.5 |
Si l’actualisation est réalisée de manière asynchrone, l’opération d’actualisation est annulée et la construction des groupes est arrêtée. Cette méthode annule l’actualisation uniquement si elle est initiée par un appel de la méthode refresh()
utilisant un argument asynch
de true
, ce qui correspond à une actualisation asynchrone.
getParent | () | méthode |
protected function getParent(node:Object):*
Version du langage: | ActionScript 3.0 |
Version du produit: | Flex 3 |
Versions du moteur d’exécution: | Flash Player 10, AIR 1.5 |
Renvoie le parent d’un nœud. Le parent d’un nœud de niveau supérieur est null
.
Paramètres
node:Object — Objet définissant le nœud.
|
* — Nœud parent comptant le nœud parmi ses enfants. La valeur est null s’il s’agit d’un nœud de niveau supérieur et undefined s’il est impossible de déterminer le parent.
|
getRoot | () | méthode |
override public function getRoot():Object
Version du langage: | ActionScript 3.0 |
Version du produit: | Flex 3 |
Versions du moteur d’exécution: | Flash Player 10, AIR 1.5 |
Renvoie super.source
si la propriété grouping
est définie. SI cette propriété n’est pas définie, renvoie une instance ICollectionView faisant référence à super.source
.
Object — Objet à renvoyer.
|
refresh | () | méthode |
public function refresh(async:Boolean = false, dispatchCollectionEvents:Boolean = false):Boolean
Version du langage: | ActionScript 3.0 |
Version du produit: | Flex 3 |
Versions du moteur d’exécution: | Flash Player 10, AIR 1.5 |
Applique le regroupement à la collection. La collection ne détecte pas automatiquement les modifications apportées à un groupe. Par conséquent, vous devez appeler la méthode refresh()
pour actualiser la collection après avoir défini les propriétés grouping
, source
ou summaries
Vous pouvez également appeler la méthode refresh()
lorsque vous modifiez un GroupingField de la collection, en modifiant les propriétés caseInsensitive
, compareFunction
ou groupingFunction
.
La méthode refresh()
peut être appliquée en mode synchrone ou asynchrone.
Lorsque la méthode refresh()
est appelée en mode synchrone, tous les groupes et les résumés sont mis à jour ensemble avant le renvoi de la méthode. Cela signifie que votre application ne peut pas effectuer d’autres opérations de traitement pour la durée de l’appel. Un client doit attendre qu’un événement CollectionEvent dont la propriété kind
est définie sur CollectionEventKind.REFRESH
soit généré pour faire en sorte que la méthode refresh()
aboutisse.
Dans une opération d’actualisation asynchrone, tous les groupes et les résumés sont mis à jour individuellement. La méthode refresh()
est renvoyée avant la mise à jour des groupes et des résumés de façon à ce que l’exécution de votre application puisse continuer. Par ailleurs, le contrôle est mis à jour lors de l’actualisation afin que l’utilisateur puisse continuer à interagir avec ce dernier.
Le temps système de mise à jour individuelle des groupes et des résumés, plutôt que toutes en même temps, allonge le délai de l’actualisation asynchrone par rapport à une actualisation synchrone. Cependant, pour les grands ensembles de données, votre application continue de fonctionner lors de l’actualisation.
Paramètres
async:Boolean (default = false ) — Si la valeur est true , l’actualisation est définie comme étant asynchrone. La valeur par défaut est false , ce qui correspond à une actualisation synchrone.
| |
dispatchCollectionEvents:Boolean (default = false ) — Si la valeur est true , les événements sont distribués à la formation des groupes. Pour de meilleures performances, définissez-la sur false . Si la valeur est true , les événements sont distribués sous forme de groupes et des résumés sont calculées en mode synchrone pour mettre à jour le contrôle. Remarque : si Async est true , dispatchCollectionEvents est toujours défini sur true . Par défaut, la valeur est false , indiquant qu’aucun événement n’est déclenché.
|
Boolean — true si la méthode refresh() est terminée et false si cela n’est pas le cas, ce qui peut être le signe que des éléments sont toujours en attente.
|
Tue Jun 12 2018, 09:30 AM Z