您的位置:首页 > 其它

arcgis server for .NET学习转载3

2009-08-26 11:22 351 查看

ArcGIS.Server.9.2.DotNet自带例子分析(一、三)

/article/4777156.html
目的:
1.MapIdentify功能,自定义Tool以及TaskResults应用。
准备:
1.(一、二)的工程,具体见前篇。
开始:
1.编辑Toolbar1的ToolbarItems属性添加一个Tool,ClientAction属性为MapIdentify('Map1'); Name属性为MapIdentify Text属性为Identify ToolTip属性为Identify (Ctrl-MouseClick) 具体代码如下:
<esri:Tool ClientAction="MapIdentify('Map1');" DefaultImage="~/Images/identify.png"
HoverImage="~/Images/identify_HOVER.gif" JavaScriptFile="" Name="MapIdentify" SelectedImage="~/Images/identify_ON.gif" Text="Identify" ToolTip="Identify (Ctrl-MouseClick)" />2.开始代码部分的编写,添加MapIdentify.cs,用来实现具体的功能。代码和说明如下:
1using System.Web;
2using System.Web.Security;
3using System.Web.UI;
4using System.Web.UI.WebControls;
5using System.Web.UI.WebControls.WebParts;
6using System.Web.UI.HtmlControls;
7using ESRI.ArcGIS.ADF.Web.UI.WebControls;
8using System.Collections.Specialized;
9using ESRI.ArcGIS.ADF.Web.DataSources;
10using System.Collections.Generic;
11using ESRI.ArcGIS.ADF.Web;
12using ESRI.ArcGIS.ADF.Web.Display.Graphics;
13
14namespace MappingApp
153.在页面上新增TaskResults控件用来显示查询内容ID为TaskResults1,接着在Page_Load事件里添加实例化上面的MapIdentify类具体代码和说明如下:
//实例化MapIdentify,并且把Map1控件作为参数
MapIdentify identify = new MapIdentify(Map1);
//显示查询结果的控件
identify.ResultsDisplay = TaskResults1;
//小数位数
identify.NumberDecimals = 4;4.接着还需要对RaiseCallbackEvent方法进行修改添加对查询结果处理的代码,具体代码和说明如下:
1//对客户端的请求进行处理
2 public virtual string RaiseCallbackEvent(string responseString)
3//路径
2var identifyFilePath = "";
3var identifyImageType = "png";
4
5//Tool MapIdentify的ClientAction
6function MapIdentify(divid)
7
//鼠标在地图上按下鼠标后触发的事件
function MapIdClick(e)

//在地图上添加小图标
function addIdentifyLocation()
{
{
content += '<img src="' + identifyFilePath + 'images/blank.gif" alt="" border="0" hspace="0" vspace="0" style="filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\'' + identifyFilePath + 'images/identify-map-icon.png\');" />\n';
}
else
{
content += '<img src="' + identifyFilePath + 'images/identify-map-icon.png" alt="" border="0" hspace="0" vspace="0" />\n';
}

content += '</div>';
//把包含小图标的div添加到地图之上
map.overlayObject.insertAdjacentHTML("BeforeEnd", content);
}6.到此为止完成了Identify功能的开发,调试运行查看效果。剩下的下一篇继续写。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: