Remplir Arbre à l'aide de données de type arraycollection
Disons que j'ai eu un type arraycollection comme ceci:
public var ac:ArrayCollection= new ArrayCollection([
{item:"dog", group:"Animals"},
{item:"orange", group:"Fruits"},
{item:"cat", group:"Animals"},
{item:"apple", group:"Fruits"}
]);
Comment créer un composant de l'Arbre en Flex 3 qui utilise les groupes de nœuds, avec les éléments énumérés sous chaque nœud?
OriginalL'auteur jtorrance | 2010-04-06
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser le
labelField
propriété de l'Arbre de dicter la propriété de qui vous voulez être le label pour chaque nœud.Dans votre exemple, ce serait vous donner un seul niveau
Tree
:Ces liens devraient vous aider:
Edit: la
ArrayCollection
vous avez créé contient des objets, chacun de qui correspondent à des groupes d'objets. Si vous souhaitez utiliser unTree
, vous devez penser de façon hiérarchique, de haut en bas.Le haut-la plupart des objets sera votre "groupes", composé d'objets représentant les "éléments." Dans votre
ArrayCollection
, chaque indice besoin d'être unObject
qui, à son tour, contient toutes les enfants. Veuillez noter: chaque objet doit ont leur imbriqués les enfants spécifié dans une propriété nommée "enfants".Par exemple:
Cet Objet est donc structuré de façon hiérarchique:
Objet: Animaux
|
|-- les enfants
|
Chien
|
Chat
À partir d'ici, le
Dog
etCat
objets pourraient également avoir unechildren
propriété, soulignant encore un autreArrayCollection
. Est-il logique?Notez comment chaque objet contient le même identifiant. Dans ce cas, j'ai utilisé "nom" pour le label qui sera affiché dans la
Tree
. Vous pouvez également utiliser lelabelFunction
bien afin de définir une fonction qui retourne unString
et peut donc déterminer ce que l'étiquette d'un nœud donné est au moment de l'exécution.J'ai pris votre
ArrayCollection
et regroupés dans une application simple qui affiche comme unTree
.Une chose à garder à l'esprit, vous n'avez pas imbriquée à la structure de l'objet (c'est à dire les objets incorporés w/objets). En conséquence, votre "arbre", il va chercher à plat, car il ne dispose que d'un seul niveau. Les exemples que j'ai posté montrer comment imbriquer les objets w/dans les objets de sorte que vous obtenez la vue hiérarchique.
Ont-ils vraiment montrer comment générer une structure hiérarchique à partir plat/données groupées? Le premier lien semble juste (artificiellement) ajouter "des enfants" des nœuds au tableau, alors que la seconde commence par la construction d'un hiérarchiquement structuré de type arraycollection. Ai-je raté quelque chose?
Désolé d'avoir mis si longtemps à répondre. Voir les modifications ci-dessus.
OriginalL'auteur bedwyr
Vous pouvez créer une hiérarchie
ArrayCollection
avec les enfants du nœud à partir d'un platArrayCollection
.Voici un lien sur les Adobes des livres de cuisine.
OriginalL'auteur jay
J'ai utilisé de cette façon et qui fonctionne pour moi: un lien!
OriginalL'auteur Nahuel Ramos