Apache flex Flex:将参数传递给itemEditor

Apache flex Flex:将参数传递给itemEditor,apache-flex,datagrid,Apache Flex,Datagrid,我有一个datagrid,其中一列调用定制的itemEditor,如 <mx:DataGridColumn dataField="city" width="150" headerText="City" itemEdi

我有一个datagrid,其中一列调用定制的itemEditor,如

                    <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"/>