ThinkGeo.com    |     Documentation    |     Premium Support

Drawing order changes on the InMemoryLayer

We have noticed that the drawing order changes on the InMemoryFeatureLayer when adding objects. This really has us baffled on how to handle this too. Here is our problem:


1)      We create an InMemoryFeatureLayer and add a couple of objects. In our case the objects are concentric so we add the largest object first followed by the smaller objects.


2)      We add the layer to the map and refresh.  The objects draw in the order that they were added all is well. No matter how many times we refresh the objects draw in the same order.


3)      We add another object to the map it may or may not overlap the existing objects it doesn’t make a difference in the outcome.


4)      When the layer redraws now the original objects seem to draw in an unknown/random order, which of course complete defeats our placement strategy since we need to see the smaller objects they are now (sometimes) covered by the larger ones.


 


Is there any way for us to control the draw order (short of writing our own InMemoryFeatureLayer)?


 


David



David,


I couldn’t recreate your problem; here I made a demo in which I add features by adding to InMemoryFeatureLayer.InternalFeatures and by using transaction, they are all working fine. Please have a look at the demo to see what the difference between yours is.
 
PS: please make sure you are using the latest assembly (3.0.131), I added a button on the demo so you can easily get the version.
 
Thanks,
 
Ben

301-TestDrawingOrder.zip (13.3 KB)