>I've been experimenting with using a grid to display images (digital photos).
>
>The reason I prefer the grid approach to something like Shell.Explorer is that using a grid gives me additional flexibility for filtering and ordering images as well as an opportunity to provide additional data about each image.
>
>My frustration with using a grid for images is that its refresh begins to slow down when there's a large number of image files being managed and one is near the bottom of the grid and navigating by up and down arrows. Specifically what I see happening is images are displayed twice while the grid's dynamic* properties are updated.
>
>I'm wondering if there's a way for a grid to LockScreen before it starts to update itself (before it applies all its dynamic* property updates) and unlock the screen after all these dynamic* updates have been applied.
>
>Any suggestions on what events I would use to set LockScreen to True and then restore it to False once a grid has finished all its updates?
>
>One half-baked thought was to LockScreen = True in the grid's KeyPress and/or Scrolled events, but where to set LockScreen to False? Possibly have my dynamic* property that's updating image controls check to see if its in the last visible row of the grid and set Lockscreen to False at this point ... or start a timer with X millisecond delay to restore LockedScreen to False after some grid event occurs near the end of the grid refresh cycle?
>
>I'm also looking for any ideas on peeking ahead in the keyboard buffer to see if a user hit the up/down or pageup/pagedown keys multiple times, performing the appropriate scrolls (WITHOUT doing a visual update after each keystroke) and THEN updating the grid control.
>
>Any suggestions appreciated!
>
>Malcolm
Malcolm,
Loading multiple images would slow down grid as it has to load each image that it needs to show. You're using a single Image control and DynamicCurrentControl is not the Dynamic* property you use, right?
Cetin