页面部分代码如下
<g:DataGridColumn id="dataGridColumn_wmcrFeeId" headerText="费用名称*" dataField="wmcrFeeId" width="100" comboMapping="SYS_FEE"> <g:itemEditor> <mx:Component> <f:ComboBox editable="true" keyField="ebfhId" labelField="ebfhNameCn"> <mx:Script> <![CDATA[ override public function set data(value:Object):void { super.data = value; if (null != this.outerDocument.action.ebfhs) { this.dataProvider = this.outerDocument.action.ebfhs; } } ]]> </mx:Script> </f:ComboBox> </mx:Component> </g:itemEditor> </g:DataGridColumn>
相对应的Flex的部分action如下:
/** * 页面打开时的调用方法 */ override public function doOpenTabCallback(param:Object):Boolean{ wmContractFrtDetailWindow=new WmContractFrtDetailWindow(); //直接打开页面 if(null==param){ FDS.call("wmWmchEbcuManager","addNewWmContractEntity",[],this.afterAdd); }else{ //列表页面新增打开 if(param[Constants.STATE]==Constants.SAVE_TYPE_ADD){ FDS.call("wmWmchEbcuManager","addNewWmContractEntity",[],this.afterAdd); } //列表页面编辑打开 if(param[Constants.STATE]==Constants.STATE_EDIT){ var id:Object=param[Constants.ROW]; FDS.call("wmWmchEbcuManager","editWmWarehouseContractEntity",[id],this.afterEditor); } //列表页面复制打开 if(param[Constants.STATE]==Constants.STATE_DUPLICATE){ var id2:Object=param[Constants.ROW]; FDS.call("wmWmchEbcuManager","copyWmWarehouseContractEntity",[id2],this.afterCopy); } } FDS.call("ebFeeHeadManager","getAll",[],afterGetAll); return true; } /** * 获取所有费用名称之后的操作 */ private function afterGetAll(result:ResultEvent):void{ this.ebfhs.removeAll(); var orgId:String = UserDetails.getLoginUser().orgId; for each(var model:EbFeeHeadModel in result.result){ if(model.ebfhEscoId == orgId) this.ebfhs.addItem(model); } }
这样配合即可过滤下拉框公司