Apache flex Flex:将参数传递给itemEditor
我有一个datagrid,其中一列调用定制的itemEditor,如Apache flex Flex:将参数传递给itemEditor,apache-flex,datagrid,Apache Flex,Datagrid,我有一个datagrid,其中一列调用定制的itemEditor,如 <mx:DataGridColumn dataField="city" width="150" headerText="City" itemEdi
<mx:DataGridColumn dataField="city"
width="150"
headerText="City"
itemEditor="components.ComboCity"
editorDataField="city"/>
我的自定义项目编辑器如下所示
<?xml version="1.0" encoding="utf-8"?>
<s:MXDataGridItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
focusEnabled="true">
<mx:ComboBox id="comboBox"/>
<fx:Script>
<![CDATA[
public var myString:String;
.
.
.
如何将值从主应用程序传递到myString
?看看这个链接,我想您会在那里找到答案:
Furher xp:
myGrid.editedItemRenderer.data.City=myEditor(myGrid.itemEditorInstance).setCity.text;
您始终可以通过调用“outerDocument”属性从itemRenderer引用父组件,例如:
myString = outerDocument.componentProperty
对我来说最好的解决方案:
<mx:Script>
<![CDATA[
import mx.events.DataGridEvent;
private function itemEditorCreateHandle(event:DataGridEvent):void
{
ComboCity(DataGrid(event.target).itemEditorInstance).myString = "Put here the value";
}
]]>
</mx:Script>
<mx:DataGridColumn
dataField="city"
width="150"
headerText="City"
itemEditor="components.ComboCity"
itemEditorCreate="itemEditorCreateHandle(event);"
editorDataField="city"/>