Exacto.. daí não recomendar nunca inline itemRenderers. Só mesmo quando é para fazer algo muito muito simples. :) Cria um custom item renderer, é mais correcto, e em princípio resolves o problema.

JS


On 12-04-2010 15:39, Rui wrote:
Isso implica eu ter que declarar uma var do tipo Image nesse bloco de
código, declaração para a qual o compilador não tem visibilidade. Ele
não reconhece o tipo Image naquele scope.

On 12 Abr, 15:20, João Saleiro<[email protected]>  wrote:
N o uses o binding no source do image. No setter faz a atribui o
directamente:

   override public function set data( value:Object ) : void
   {
         super.data = value;
         image.source = ....
   }

On 12-04-2010 15:18, Rui wrote:

Boa tarde!
Estou aqui com uma situa o no refresh de uma datagrid em que, em duas
das colunas, estou a renderizar imagens para cada uma das rows. Por m,
quando fa o o scroll nas linhas da datagrid, aparecem-me rows com
imagens que n o deveriam la estar. Estive a investigar e, pelo que
percebi, o problema deriva do recycling do item Renderer. Tentei fazer
override do nm todo set data daquela coluna mas o problema persiste. O
meu c digo est assim:
<mx:DataGridColumn headerText="Icon" textAlign="center" width="100">
                            <mx:itemRenderer>
                                    <mx:Component>
                                            <mx:HBox horizontalAlign="center">
                                                    <mx:Script>
            <![CDATA[
                                        override public function set
data( value:Object ) : void {
                                            super.data = value;
                                        }
                                    ]]>
    </mx:Script>
                                                    <mx:Image
source="{outerDocument.defineAlertserviceIconSD(data)}"
                                                            width="50"
                                                            height="50"
                                                            />
                                            </mx:HBox>
                                    </mx:Component>
                            </mx:itemRenderer>
                    </mx:DataGridColumn>
                    <mx:DataGridColumn headerText="Image" textAlign="center"
width="100">
                            <mx:itemRenderer>
                                    <mx:Component>
                                            <mx:HBox horizontalAlign="center">
                                                    <mx:Script>
            <![CDATA[
                                        override public function set
data( value:Object ) : void {
                                            super.data = value;
                                        }
                                    ]]>
                            </mx:Script>
                                                    <mx:Image
source="{outerDocument.defineAlertServiceImage(data)}"
                                                            width="50"
                                                            height="50"
                                                            />
                                            </mx:HBox>
                                    </mx:Component>
                            </mx:itemRenderer>
                    </mx:DataGridColumn>
os m todos outerDocument.defineAlertServiceImage(data) e
defineAlertServiceIcon(data) apenas pegam na imagem em Base64 e fazem
o decode, devolvendo o bytearray pra sourfce da imagem do itemRenderer
alguma ideia de como por a datagrid a fazer o refresh devidamente?
Obrigado

--
Recebeu esta mensagem porque está inscrito no grupo "Mailing List da Comunidade 
Portuguesa de Rich Internet Applications - www.riapt.org" dos Grupos do Google.

Para publicar uma mensagem neste grupo, envie um e-mail para 
[email protected].
Para anular a inscrição neste grupo, envie um e-mail para 
[email protected].
Para ver mais opções, visite este grupo em 
http://groups.google.com/group/riapt?hl=pt-PT.

Responder a