Hi,
In my application, I have a map (WpfMapControl) with 4 layers:
* RasterLayer
* 2 ShapeFileFeatureLayer
* InMemoryFeatureLayer
Each layer is contained in an overlay of its own.
The InMemoryFeatureLayer contains vehicles information which get updated every few seconds.
I update the vehicles layer using the EnterWriteLock and ExitWriteLock functions.
After I update the vehicles layer i call map.Refresh(). As a result the raster layer and the 2 shape file layers disappear and only the vehicle layer is displayed. Once i pan the map, everyhing is diplayed again until the next time.
If , before calling the refresh() , i call the writeLock for the other 3 overlays then the refresh works fine but it takes a long time as everything needs to be redrawn.
I would expect the refresh function to redraw all "non dirty" overlays from an internal cache and regenerate the image for the dirty overlay. From what i see, the non dirty overlays do not get redrawn at all.