添加动态渲染层分为三步
1.定义一个MapResource类型变量,用来往里面添加动态层
2. 定义一个GraphicLayer,并将存储有需要渲染的地图要素的数据表类型为DataTable的变量转化为GraphicLayer类型,并指定颜色样式
3.将转化后的GraphicLayer添加到步骤1中定义的数据源中,刷新地图。
1
/// <summary>
2
/// 本函数作用是用来给一个指定的GraphicLayer类型的数据源中添加一个动态渲染曾
3
/// </summary>
4
/// <param name="map1">地图控件</param>
5
/// <param name="mapResourceName">数据源名字</param>
6
/// <param name="dt">存储需要渲染的要素的数据表</param>
7
public void showGraphic(Map map1, string mapResourceName,DataTable dt)
8
{
9
System.Collections.IEnumerable enumFunc = map1.GetFunctionalities();
10
//添加一个地图数据源,动态层将添加到这个数据源中
11
MapResource mapResource = null;
12![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
13
//遍历地图控件的fuanctionality,找到需要的数据源,转化为MapResource类型
14
foreach (IGISFunctionality func in enumFunc)
15
{
16
if (func.Resource.Name == mapResourceName)
17
mapResource =(Graphics.MapResource) func.Resource;
18
//清楚原有数据,如果此处不清除原有数据,每次渲染将保留以前的数据
19
mapResource.Graphics.Tables.Clear();
20
}
21
if (mapResource == null)
22
return;
23![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
24
//将传进来的DataTable参数转化为GraphicLayer
25
ESRI.ArcGIS.ADF.Web.Display.Graphics.GraphicsLayer graphicLayer = null;
26
graphicLayer = Converter.ToGraphicsLayer(dt, Color.Yellow, Color.Green);
27
//将转化后的GraphicLayer添加到地图数据源中
28
mapResource.Graphics.Tables.Add(graphicLayer);
29![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
30
//地图刷新
31
if (map1.ImageBlendingMode == ImageBlendingMode.Browser)
32
{ map1.Refresh(); }
33
else if(map1.ImageBlendingMode==ImageBlendingMode.WebTier)
34
{
35
map1.RefreshResource(mapResource.Name);
36
}
37
}
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
2
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
3
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
4
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
5
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
6
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
7
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
8
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
9
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
10
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
11
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
12
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
13
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
14
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
15
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
16
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
17
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
18
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
19
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
20
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
21
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
22
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
23
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
24
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
25
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
26
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
27
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
28
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
29
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
30
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
31
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
32
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
33
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
34
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
35
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
36
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
37
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)