I have 2 annotated layers which I load in a BaseMapLayerClass. When the map is static the annotations are visible. When I enable DynamicMap I lose all annotations. I would like a way to annotate layers in a BaseMapLayerClass while dynamic is enabled.

An interesting note about the problem. If I don't have my layers in a BaseMapLayerClass, dynamic display does not affect my annotations.

However I would like them to be in a BaseMapLayerClass because would make it much easier for me to save layers and restore them across sessions.

I'm using ArcEngine C# VS2010

I think the problem is somehow related to extents.

This post: http://briannoyle.wordpress.com/2008/03/18/esri-dynamic-displaysome-limitations/

Led me to the limitations page http://edndoc.esri.com/arcobjects/9.2/NET/0b062497-a3fc-4c56-a688-0fb9b2fcb4ea.htm

which states :

Labels will be cut off on custom layers that don't return the correct extent

And actually it's weird. Sometimes the annotations will draw and then I'll move the map up a few pixels with the hand tool, and then they will no longer draw. Then move it back a few pixels and it will draw again.

It's helpful there is a consistency there, but I haven't a clue how to implement a workaround.

1 Answer 1


Accessing a sublayer from BaseMap and casting it into a IGeoFeatureLayer gives null. So I guess the solution is do not attempt.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.