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.