Adobe Flex Datagrid:addEventListener MouseEvent.CLICK

时间:2010-05-02 17:19:31

标签: flex datagrid itemrenderer

我有一个带有自定义标签itemrenderer的数据网格(基本上它使标签看起来像传统的html超链接)。

<mx:DataGridColumn id="itemId">  
  <mx:itemRenderer>
    <mx:Component>
      <controls3:HyperlinkLabel text="{data.doc}" />
    </mx:Component>
  </mx:itemRenderer>   
</mx:DataGridColumn> 

以上工作完美。

我想尝试向这个itemrenderer添加一个事件监听器,但我不知道如何做到这一点,因为我无法为itemrender本身指定一个id。

我尝试了以下内容,但它似乎无法正常工作:

itemId.addEventListener(MouseEvent.CLICK, onItemSelect);

1 个答案:

答案 0 :(得分:1)

您不需要身份证件。只需使用event.currentTarget

即可
<mx:DataGridColumn id="itemId">  
  <mx:itemRenderer>
    <mx:Component>
      <controls3:HyperlinkLabel text="{data.doc}" click="onItemSelect(event)" />
    </mx:Component>
  </mx:itemRenderer>   
</mx:DataGridColumn> 

然后......在你的脚本标签中......

private function onItemSelect(event:MouseEvent) : void {
 // do something with event.currentTarget
}