我有一个flex数据网格,其中包含从服务填充的购物车项目。每行都有自定义ItemRenderer提供的编辑/删除按钮。当我点击每个按钮时,我从itemrenderer发送一个事件,该事件调用服务以编辑/删除所选项目。
如何通过Itemerenderer中的dataprovider获取产品的ID,以便通过我的自定义事件发送它?
提前致谢
答案 0 :(得分:1)
使用itemRenderer的DATA属性。
Flex帮助有一个非常具有说明性的例子。如果您的dataProvider是:
<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>
您可以按如下方式访问数据项:
<?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>