2016-02-26 2 views
0

У меня есть сетка данных с несколькими столбцами, среди которых одна для даты запаса. Основываясь на данных, которые я получаю от бэкэнд, когда флаг отключен, я хочу, чтобы дата отображалась как метка, иначе я хочу, чтобы дата начала была редактируемым полем даты. Как это может быть сделано? Я пробовал этот ниже код, но он берет последний обработанный элемент как средство рендеринга элементов. Потому что, когда я зацикливаюсь, условие для разных записей меняется и рендеринг его таким образом, похоже, не работает. Пожалуйста помоги.Можно ли использовать два рендеринга элемента для столбца сетки в Adobe flex?

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); 
    } 
} 
} 

ответ

0

есть «флаг» набор свойств в данных для визуализации элементов

Создание пользовательского ItemRenderer, который будет иметь как компонент, CustomCalenderRenderer и CustomLabelRenderer и переплетены с data.flag для includedInLayout или не

Спасибо

+0

означает средство визуализации внутри средства визуализации? Или вы имеете в виду класс рендеринга, который имеет как mx-компоненты Label, так и DateField? –

+0

Я имел в виду средство визуализации, которое будет иметь как компонент, так и includeInLayout на основе data.flag. Все, что вам нужно сделать, это разместить флаг в коллекции, а затем связать includeInLayout обоих компонентов с data.flag. –