从事过ArcEngine相关工作知道,在ArcEngine中绘制图形有两种存在方式,一种是以要素(feature)的形式,一种是以元素(element)的形式。添加两种不同形式的图形,绘制的方法是不一样的。其中feature需要通过在内存新建或者添加图层,运用编辑工具在图层中添加feature,而element是通过在graphicContainers中添加。grapicContainers相当于在MapControl 中上覆盖的一个透明图层,在该图层中添加上element,而feature是在map中的图层上进行了更改。
ArcGIS Mobile应用程序中添加图形与ArcEngine类似也存在两种方式。一种方式直接编辑feature,这需要素图层含有GlobalID字段,另一种方式就是定义图层图层,继承ArcGIS Mobile sdk中的MapGraphicLayer类,相当于AE中的graphicContainer. 下面就以介绍这种自定义的方式绘制图形。
实现环境:
win7专业版+visual studio 2008 sp1+.net compact framwork 3.5+windows mobile 6.0 professional sdk+ArcGIS Runtime SDK 10.1.1
实现过程:
Step1:在模拟器中构建界面
图1:构建程序界面图
Step2:新建一个类,该类继承MapGrapicLayer.代码如下:


class CustomGraphicLayer : MapGraphicLayer { /// 创建表现symbol private