标注转为存于Map中的注记,Engine中如何获取该注记?

标注转为存于Map中的注记,Engine中如何获取该注记?
已邀请:

朱新颖

赞同来自:

【解决办法】:
可以通过IMap.BasicGraphicsLayer转为IGraphicsContainer进行获取。注意:直接通过IGraphicsContainer.Next();方法无法获取到IElement,但可以通过LocateElementsByEnvelope获取到IEnumElement,进行遍历即可。 参考代码:
 
IMap map = axMapControl1.Map;
IGraphicsContainer graphicsContainer = map.BasicGraphicsLayer as IGraphicsContainer;

IEnumElement enumElement = graphicsContainer .LocateElementsByEnvelope(axMapControl1.ActiveView.Extent);
enumElement.Reset();
IElement element = enumElement.Next();
while (element != null)
{
ITextElement textElement = element as ITextElement;
element = enumElement.Next();
}

要回复问题请先登录注册