1.Utiliser un contrôle DataGrid

Un contrôle Datagrid est un contrôle List qui affiche vos données sous forme d’un tableau où les champs peuvent être formatés.

La construction de l’objet est de la forme :

<mx:DataGrid columns="No default"
dataProvider="No default" sortableColumns="true|false". . ./>

Vous avez 2 façons de fournir les données à votre datagrid, soit avec des données incluses, soit avec un modèle de donnée de type XML (voir exemple dans pack).


2.Spécifier les colonnes du DataGrid

Vous pouvez personnaliser vos colonnes afin de filtrer les données XML reçus par exemple. Limiter le nombre de colonne et définir l’entête à afficher, par défaut ça sera le nom du champ qui sera affiché.

Voici un exemple :

<mx:Model id="mod" source="datagriddata.xml"/>
<mx:DataGrid id="myGrid" dataProvider="{mod.item}">
<mx:columns>
<mx:Array>
<mx:DataGridColumn dataField="champ_utilise" headerText="nom_colonne" />
<mx:DataGridColumn dataField="champ_utilise" headerText="nom_colonne" />
</mx:Array>
</mx:columns>
</mx:DataGrid>

Pour formater les données d’une colonne, comme par exemple afficher une date, utiliser la propriété labelfunction qui vous permet d’associer le résultat d’une fonction aux valeurs de la colonne. Voir PDF pour un exemple détaillé.

Attention : si vous voulez créer une colonne avec des données personnelles qui ne serait pas dans votre dataProvider, utiliser labelFunction. J’ai eu à faire à ce cas, et je vous livre la petite astuce pour créer votre colonne de données combiné avec celles en XML.


3.Utiliser un conteneur Tile

Un conteneur Tile, est comme son nom l’indique, un conteneur, qui vous permet de pluguer différents tuiles sur une page. Il s’agit de petite surface de taille identique qui peut se répéter et ayant un contenu défini par l’utilisateur. Utile pour afficher plusieurs miniatures de photo par exemple. Consulter le PDF et ses exemples pour mieux comprendre la bête.


4.Dupliquer les contrôles avec un Repeater

Le repeater vous permet d’itérer sur une liste d’objet (contrôleur ou conteneur). Accéder à l’objet par la propriété currentItem et à la position currentIndex. Pour plus de détails, cf PDF. Il est possible bien entendu d’accéder aux données d’un Repeater en ActionScript, grâce à la méthode getRepeaterItem() (voir exemple et explication en détail dans le pdf)


5.Utiliser un TileList



Un autre contrôleur qui combine un repeater et un Tile mais en plus performant. Il vous permet en outre de combiner plusieurs contrôle au sein d’une même cellule.

Pour utiliser le TileList, vous avez besoin de spécifier 2 propriétés dont le dataProvider que vous connaissez déjà. L’autre étant le listItemRenderer, un composant personnalisé qui spécifie comment les données doivent être affichées dans chaque cellule (très utile). Encore une fois, tout ceci est expliqué en détail dans le pack.


Téléchargement

Télécharger le pack du chapitre 11 Manipuler les ensembles de données