本文主要是介绍ArcGIS.Server.9.2.DotNet实现动态设置Label标注功能,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
目的:
1.arcgis server9.2 ADF实现动态设置Label标注功能,选择不同图层然后选择要作为Label显示的字段然后更新地图的Label。
准备工作:
1.用ArcGis Server Manager或者ArcCatalog发布一个叫usa的Map Service,并且把这个Service启动起来。
完成后的效果图:
开始:
1.新建名为LabelFieldSamples的ASP.NET Web应用程序,在页面上添加MapResourceManager1、Map1控件。
2.为MapResourceManager1控件添加MapResourceItem,由上到下分别为,(usa的Map Service)名称为:worldCities、DataSourceType:ArcGIS Server Local。
3.按着上图设置好Map1控件,在页面的右边添加2个<div id="layer"></div>和<div id="field"></div>用来显示图层选择列表和字段选择列表,加一个input 的按钮并且添加onclick事件用来实现按钮功能。具体html代码如下:
图层: < div id ="layer" ></ div > 2
< br /> 3
字段: < div id ="field" ></ div > 4
< br /> 5
< input id ="Button1" type ="button" value ="显示Label" onclick ="showLabel()" />
public partial class _Default : System.Web.UI.Page, ICallbackEventHandler2
{3
//脚本段字符串4
public string m_Callback;5
protected void Page_Load(object sender, EventArgs e)6
{7
//生成脚本段字符串用来供客户端的js调用8
m_Callback = Page.ClientScript.GetCallbackEventReference(Page, "argument", "processCallbackResult", "context", "processCallbackError", true);9
}10

11
ICallbackEventHandler 成员25

26
private string RaiseCallbackEvent(string _callbackArg)27
{28
string v = "";29
//代码待写30
return v;31
}32
}
< script type = " text/javascript " language = " javascript " > 2
function pageLoad()3
{4
var argument = "ControlID=Map1&ControlType=Map&Type=Layer";5
var context = "Map";6
var rv=<%= m_Callback %>;7
eval(rv);8
} 9
< / script> 这篇关于ArcGIS.Server.9.2.DotNet实现动态设置Label标注功能的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!
