Com a dica do Fredy Gadotti fui testar o que falei acima...

e vimos que Não funciona.

quando tem muitos itens, o labelfunction é executado apenas quando o item é
exibido, sendo refeito quando o item (linha do grid) some e aparece
novamente. com isso subindo e descendo a rolagem varias vezes, o sequencial
vai aumentando infinitamente.



Segue o teste que ocorre o problema...

*<?xml version="1.0" encoding="utf-8"?>*
*<s:Application
creationComplete="application1_creationCompleteHandler(event)"*
*               xmlns:fx="http://ns.adobe.com/mxml/2009"*
*               xmlns:mx="library://ns.adobe.com/flex/mx"*
*               xmlns:s="library://ns.adobe.com/flex/spark">*
*    <fx:Script>*
*        <![CDATA[*
*            import mx.collections.ArrayCollection;*
*            import mx.events.FlexEvent;*
*            *
*            [Bindable]*
*            private var sequencial:int = 0;*
*            *
*            [Bindable]*
*            private var array:ArrayCollection = new ArrayCollection();*
*            *
*            protected function
application1_creationCompleteHandler(event:FlexEvent):void {*
* for (var i:int = 0; i < 100; i++) *
* {*
*                                        array.addItem({teste:"teste"+i});**
 *
* }*
*            }*
*            *
*            private function labelSequencial(item:Object,col:Object):String
{*
*                return sequencial++.toString();*
*            }*
*        ]]>*
*    </fx:Script>*
*
*
*    <mx:DataGrid width="100%"*
*                 height="100%"*
*                 dataProvider="{array}">*
*        <mx:columns>*
*            <mx:DataGridColumn dataField=""*
*                               headerText="Sequencial"*
*                               labelFunction="labelSequencial"/>*
*
*
*            <mx:DataGridColumn dataField="teste"*
*                               headerText="teste"/>*
*        </mx:columns>*
*    </mx:DataGrid>*
*</s:Application>*




então acho que o melhor é fazer um itemRender mesmo!!! :S

desculpe ter postado algo sem testar!!


Att,
Samuel Facchinello
http://desenvolvendoemflex.blogspot.com
Joinville - SC



Em 17 de agosto de 2011 08:45, Fredy Gadotti <[email protected]>escreveu:

>  <mx:DataGrid dataProvider="{collection}">
> <mx:columns>
>  <mx:DataGridColumn dataField="" headerText="Sequência"
> labelFunction="labelSequencial" />
> <mx:DataGridColumn dataField="descricao" headerText="Descrição" />
>  </mx:columns>
> </mx:DataGrid>
>

-- 
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para 
[email protected]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev

Responder a