В вашем средстве визуализации элементов попробуйте переопределить установщик data
(который неявно вызывается SDK для каждого элемента в вашем dataProvider, когда вы перемещаетесь по тому элементу управления с привязкой к данным, который вы используете), и устанавливаете source
свойство оттуда, вот так:
<mx:List dataProvider="{yourDataSource}">
<mx:itemRenderer>
<mx:Component>
<mx:HBox>
<mx:Script>
<![CDATA[
override public function set data(value:Object):void
{
super.data = value;
// Set your values here (value contains your data item)
myImage.source = value.yourImageSourceInstance;
myLabel.text = value.yourLabelText;
}
]]>
</mx:Script>
<mx:Image id="myImage" />
<mx:Label id="myLabel" />
</mx:HBox>
</mx:Component>
</mx:itemRenderer>
</mx:List>
... и посмотрим, поможет ли это. Flex, вероятно, пытается повторно использовать визуальные элементы средства визуализации, не понимая, что вы намерены поменять их при изменении данных. Затем, выполнив действие (когда элемент данных будет установлен), вы сможете более четко контролировать, что происходит с визуальными элементами средства визуализации.
Надеюсь, это поможет!