2009-02-19 5 views
0

J'utilise un AdvancedDataGrid avec deux GroupingFields. Le fournisseur de données a une liste d'objets avec ces deux valeurs de champ, mais parfois la deuxième valeur de champ peut être nulle. Lors du chargement, l'interface utilisateur AdvancedDataGrid possède un dossier racine (premier GroupingField) et des sous-dossiers supplémentaires (second GroupingField). Tout est bien. Cependant, les objets avec une valeur nulle pour le second GroupingField, sont simplement placés dans un sous-dossier sans label.Flex AdvancedDataGrid avec le regroupement, comment puis-je faire apparaître les objets sous GroupingField si le second GroupingField est null?

Je souhaite que les objets avec une deuxième valeur GroupingField nulle apparaissent en tant que nœuds feuille sous le dossier racine (premier GroupingField) moins le sous-dossier vide.

Un bon moyen d'image ce serait un explorateur de fichiers. Y at-il un bon moyen de le faire? Faire disparaître l'icône de dossier peut-être après l'expansion de ce nœud par actionscript?

ParentFolder 
    SubFolder 
     Leaf Object 
     Leaf Object 
    SubFolder 
     Leaf Object 
    Leaf Object 
    Leaf Object 
+0

ADG est une chose terrible et merveilleuse. J'essaie toujours de comprendre la structure de l'objet "données" lors de l'utilisation des champs de groupe À la vôtre –

Répondre

0

Vous pouvez envisager le passage des données hiérarchiques dans votre ADG plutôt que d'utiliser un GroupingCollection sur des données plates. Avec les données hiérarchiques, les nœuds avec enfants seront représentés en tant que dossiers, les nœuds sans enfants apparaîtront en tant que leafs (tout comme un contrôle Tree se comporte).

comme ceci: http://www.flex-blog.com/tree-in-advanced-datagrid-example/

0

Vous pouvez supprimer les objets vides de votre liste d'objets d'abord (en utilisant une boucle ou filterFunction), puis le définir comme dataProvider du DataGrid.

Questions connexes