【问题标题】:Can two item renderers be used for a grid column in Adobe flex?可以将两个项目渲染器用于 Adob​​e flex 中的网格列吗?
【发布时间】:2016-06-09 15:14:33
【问题描述】:

我有一个包含多列的数据网格,其中一列用于库存日期。根据我从后端获得的数据,当禁用标志时,我希望日期显示为标签,否则我希望开始日期是可编辑的日期字段。如何才能做到这一点?我在下面的代码中试过这个,但它把最后一个渲染的项目作为项目渲染器。因为当我循环时,不同记录的条件发生变化并以这种方式呈现它似乎不起作用。请帮忙。

private function resultHandler_tbd(event:ResultEvent):void{
var myAC: ArrayCollection= event.result as ArrayCollection; //data from backend
  myDataGridId.dataprovider= myAC;
for(var i:int=0;i<myAC.length;i++){
   mylist=myAc[i];
   if(mylist.tbdType=="Plan" && flag==true){
   plnStartDate.itemrenderer= new ClassFactory(CustomCalenderRenderer);
   }else
   plnStartDate.itemrenderer = new ClassFactory(CustomLabelRenderer);
   }
 }
}

【问题讨论】:

    标签: actionscript flex4 mxml


    【解决方案1】:

    在数据中为项目渲染器设置“标志”属性

    创建一个自定义 itemrenderer,它将同时具有组件 CustomCalenderRenderer 和 CustomLabelRenderer 并与 data.flag 绑定是否包含InLayout

    谢谢

    【讨论】:

    • 表示渲染器中的渲染器?或者你的意思是一个渲染器类,它同时具有 mx 组件 Label 和 DateField?
    • 我的意思是一个渲染器,它基于 data.flag 将同时包含组件和包含的布局。您所要做的就是将标志道具放在集合中,然后将两个组件的includedInLayout绑定到data.flag。
    猜你喜欢
    • 1970-01-01
    • 2012-02-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多