actually, to be sure, what is the type of your dataprovider Laurence?

Douglas Knudsen
http://www.cubicleman.com
this is my signature, like it?


On Thu, Mar 24, 2011 at 7:39 PM, Vaibhav Seth <[email protected]>wrote:

> If you have taken the ArrayCollection as dataprovider, then instead of
> refresh, try dispatching collectionchange event.
>
>
> On Thu, Mar 24, 2011 at 7:09 PM, Laurence MacNeill <[email protected]
> > wrote:
>
>> Well, setting the dataProvider to null than back again seems to work...
>>
>> Of course, if the list hasn't gotten short enough to prevent scrolling,
>> the scroll-position is reset back to zero...  But that's a simple matter of
>> storing the current scroll-position in a variable, then re-setting the
>> data-provider, then restoring the scroll-position...  Seems to work fine.
>>
>> But man, what a pain...  Why a simple dataprovider.refresh() wouldn't do
>> it is just beyond me...
>>
>> L.
>> On Thu, Mar 24, 2011 at 6:50 PM, Vaibhav Seth 
>> <[email protected]>wrote:
>>
>>> you can also try dispatching a CollectionChange event on the
>>> dataprovider, some time it works this way.
>>> So that you can avoid the flickering on the screen for that moment.
>>>
>>>
>>> On Thu, Mar 24, 2011 at 6:47 PM, Laurence MacNeill <
>>> [email protected]> wrote:
>>>
>>>> Oh, and to be clear, I'm not assigning a new data-provider to the List
>>>> at any time.  I'm simply updating the data in the data-provider, then
>>>> calling the .refresh() method on it.
>>>>
>>>> Perhaps setting my data-provider to null, then back to the real
>>>> data-provider would fix it?  I'm gonna give that a try, just for kicks.
>>>>
>>>> L.
>>>>
>>>>   On Thu, Mar 24, 2011 at 6:40 PM, Laurence MacNeill <
>>>> [email protected]> wrote:
>>>>
>>>>> I agree, it *should* take care of the renderer.  But it doesn't.  Only
>>>>> if the item scrolls off the screen then back onto the screen later does it
>>>>> show the updates.  It simply will not update if the item is on-screen.
>>>>>
>>>>> Re-sizing works, only if I can manage to re-size it enough to force the
>>>>> item not to appear on the screen anymore.  Actually, it has to go a bit
>>>>> farther -- far enough for the item-renderer to be recycled.  It's like the
>>>>> data simply is not updated until the item-renderer is recycled.  Perhaps
>>>>> there's a way to force the item-renderer to be recycled, then?  I don't
>>>>> know...
>>>>>
>>>>> L.
>>>>>
>>>>>   On Thu, Mar 24, 2011 at 6:36 PM, Vaibhav Seth <
>>>>> [email protected]> wrote:
>>>>>
>>>>>> If I got you right, when the scroll goes off and you give the List a
>>>>>> new dataprovider, the updated data does not reflect in the List ?
>>>>>> That seems very strange, as when you are giving the new dataprovider
>>>>>> it should take care of the renderer.
>>>>>>
>>>>>> Did you tried resizing the application when the scroll goes off ? Does
>>>>>> the resizing brings back the updated data ?
>>>>>>
>>>>>>
>>>>>> On Thu, Mar 24, 2011 at 6:27 PM, Eric DeCoff <[email protected]>wrote:
>>>>>>
>>>>>>> Laurence,
>>>>>>>
>>>>>>> Take a look at my datagrid render itemrender from 4.5
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Thu, Mar 24, 2011 at 5:36 PM, Laurence MacNeill <
>>>>>>> [email protected]> wrote:
>>>>>>>
>>>>>>>> Maybe y'all can help me here...  I've been banging my head against
>>>>>>>> the wall for hours on this stupid thing, and I can't seem to figure it
>>>>>>>> out...
>>>>>>>>
>>>>>>>> I have a spark Panel which contains a spark List.  The List scrolls
>>>>>>>> automatically -- no user interaction required, as this is a simple app
>>>>>>>> that's just being used on a large display-screen at a convention 
>>>>>>>> center.
>>>>>>>> It's displaying a list of upcoming events, and that list needs to be 
>>>>>>>> updated
>>>>>>>> every so often (you know, if an event has sold out or been cancelled or
>>>>>>>> whatever) so I'm updating the data in the List's dataProvider every 3
>>>>>>>> minutes.
>>>>>>>>
>>>>>>>> As the day goes on, the list gets shorter and shorter -- events that
>>>>>>>> are in the past are removed from the dataProvider because the database 
>>>>>>>> query
>>>>>>>> excludes events that started more than 15 minutes ago.
>>>>>>>>
>>>>>>>> When the list is short enough, there is no more scrolling.  There's
>>>>>>>> enough room to display all the events without the list automatically
>>>>>>>> scrolling.  THAT is when the problem occurrs -- the custom 
>>>>>>>> item-renderer
>>>>>>>> stops updating, because it's not scrolling off the screen anymore...  
>>>>>>>> Even
>>>>>>>> though I'm calling the .refresh() method on the List's data-provider, 
>>>>>>>> it's
>>>>>>>> not updating the renderers that are already being rendered on the 
>>>>>>>> screen.
>>>>>>>>
>>>>>>>> So.  How to I make it update those renderers that are already on the
>>>>>>>> screen?  I've tried about 20 different suggestions that I found on
>>>>>>>> Google (my own custom-written invalidateListDisplay function since a 
>>>>>>>> Flex 4
>>>>>>>> List doesn't have one, using the List.dataProvider.itemUpdated() 
>>>>>>>> thingy,
>>>>>>>> setting the List's itemRenderer = null then back to the custom 
>>>>>>>> itemRenderer
>>>>>>>> again both with and without a validateNow() call in there, using the
>>>>>>>> updateRenderer() method, etc., etc..) I've tried them all, and NOTHING 
>>>>>>>> has
>>>>>>>> worked.
>>>>>>>>
>>>>>>>> I've really got to get this figured out soon.  It's for a live show
>>>>>>>> that's happening right now.
>>>>>>>>
>>>>>>>> Thanks,
>>>>>>>> Laurence MacNeill
>>>>>>>> Mableton, Georgia, USA
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Eric R. DeCoff
>>>>>>> Changing the world,
>>>>>>> 1 line of code at a time
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Thanks,
>>>>>> Vaibhav Seth.
>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>>
>>> --
>>> Thanks,
>>> Vaibhav Seth.
>>>
>>>
>>
>
>
> --
> Thanks,
> Vaibhav Seth.
>
>

Reply via email to