2010-12-05 31 views
1

J'ai une grille de données flexible avec des articles de chariot remplis à partir d'un service. Chaque rangée a des boutons d'édition/suppression fournis par un ItemRenderer personnalisé. Lorsque je clique sur chaque bouton, j'envoie un événement à l'itemrenderer qui appelle un service pour éditer/supprimer l'élément sélectionné.Boutons Modifier/Supprimer dans Flex Datagrid

Comment puis-je obtenir l'ID du produit sous forme de fournisseur de données dans Itemerenderer afin de l'envoyer avec mon événement personnalisé?

Merci à l'avance

Répondre

1

Utilisez la propriété DATA du itemRenderer.

L'aide Flex a un exemple très illustratif. Si votre fournisseur de données est:

<mx:ArrayList> 
<fx:Object firstName="Bill" lastName="Smith" companyID="11233"/> 
<fx:Object firstName="Dave" lastName="Jones" companyID="13455"/> 
<fx:Object firstName="Mary" lastName="Davis" companyID="11543"/> 
<fx:Object firstName="Debbie" lastName="Cooper" companyID="14266"/> 
</mx:ArrayList> 

vous pouvez accéder à l'élément de données comme suit:

<?xml version="1.0" encoding="utf-8"?> 
<!-- containers\spark\myComponents\MySimpleItemRenderer.mxml --> 
<s:ItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009" 
xmlns:mx="library://ns.adobe.com/flex/mx" 
xmlns:s="library://ns.adobe.com/flex/spark"> 
<s:HGroup verticalCenter="0" left="2" right="2" top="2" bottom="2"> 
<s:Label text="{data.lastName}, {data.firstName}"/> 
<s:Label text="{data.companyID}"/> 
</s:HGroup> 
</s:ItemRenderer>