Apache flex flex-访问datagrid外部的链接按钮
我正在使用以下代码:Apache flex flex-访问datagrid外部的链接按钮,apache-flex,datagrid,Apache Flex,Datagrid,我正在使用以下代码: <mx:DataGridColumn id="test" headerText="Case ID" width="80"> <mx:itemRenderer> <fx:Component> <mx:Canvas> <mx:LinkButton id="lnkCaseId" click="lnkCaseId.dispatchEvent(new MouseEvent(MouseEven
<mx:DataGridColumn id="test" headerText="Case ID" width="80">
<mx:itemRenderer>
<fx:Component>
<mx:Canvas>
<mx:LinkButton id="lnkCaseId" click="lnkCaseId.dispatchEvent(new MouseEvent(MouseEvent.CLICK,true,false))" label="{data.caseId}" textDecoration="underline" color="#0052A5">
</mx:LinkButton>
</mx:Canvas>
</fx:Component>
</mx:itemRenderer>
</mx:DataGridColumn>
如何在datagrid外部访问lnkCaseId?您可以使用outerdocument方法将外部文档事件侦听器添加到
<mx:LinkButton label="Buy" click="{outerDocument.outerFileMethod(data)}" />
获取rendrer的另一种方法是通过事件冒泡,请参见下面的示例
<?xml version="1.0" encoding="utf-8"?>
<mx:Application
xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"
click="{clicked(event)}">
<mx:Script>
<![CDATA[
import mx.controls.LinkButton;
import mx.core.UIComponent;
import mx.controls.Alert;
public function clicked(event:MouseEvent):void
{
if (event.target is LinkButton)
{
var innerLinkButon:LinkButton = event.target as LinkButton;
Alert.show("Application : "+innerLinkButon.label);
}
}
]]>
</mx:Script>
<mx:DataGrid id="grid">
<mx:dataProvider>
<mx:ArrayCollection>
<mx:Array>
<mx:Object label="AAAA"/>
<mx:Object label="BBBB"/>
<mx:Object label="CCCC"/>
<mx:Object label="DDDD"/>
</mx:Array>
</mx:ArrayCollection>
</mx:dataProvider>
<mx:columns>
<mx:DataGridColumn id="columnA" headerText="columnA" dataField="@label">
<mx:itemRenderer>
<mx:Component>
<mx:LinkButton click="{clicked(event)}" label="{data.label.toString()}">
<mx:Script>
<![CDATA[
import mx.controls.Alert;
public function clicked(event:MouseEvent):void
{
Alert.show("linkButton");
}
]]>
</mx:Script>
</mx:LinkButton>
</mx:Component>
</mx:itemRenderer>
</mx:DataGridColumn>
</mx:columns>
</mx:DataGrid>
</mx:Application>
希望有帮助你能描述一下你想在网格外做什么,这将是完全有帮助的,而且它有多个实例,即每行有一个实例。@Imran。。在应用程序的creationComplete事件中,我想为linkbutton添加一个eventlistener。请参阅ans,了解如何将事件侦听器添加到InlineRendreportable的可能副本。我尝试了此操作,但我拒绝使用outerDocument我已在ans中放置了一个用于事件冒泡的示例