Flex 2: Manipuler les ensembles de données
Par Dai, dimanche 13 janvier 2008 à 22:28 :: Cours et Formation Flex - AIR :: #43 :: rss
Après la manipulation des données XML (chap 10), nous allons voir l’utilisation des contrôles.
Dans ce chapitre 11 nous allons aborder ces différents points :
1. Utiliser un contrôle DataGrid
2. Spécifier les colonnes du DataGrid
3. Utiliser un conteneur Tile
4. Dupliquer les contrôles avec un Repeater
5. Utiliser un TileList
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





Commentaires
1. Le lundi 14 janvier 2008 à 17:38, par flex air
2. Le jeudi 17 janvier 2008 à 11:58, par carpentier
3. Le jeudi 17 janvier 2008 à 19:19, par dai
4. Le mardi 10 juin 2008 à 04:16, par img
5. Le samedi 2 août 2008 à 07:57, par tsop
6. Le lundi 1 février 2010 à 16:42, par nike outlet
Ajouter un commentaire