首页 - 论坛   -  WebGIS  -  测绘  -  GPS  -  遥感  -  GIS招聘  -  GIS开发  -  GIS应用  -  GIS基础  -  GIS新闻
最新最全的GIS、RS、GPS资讯信息---www.upgis.com
首页  »  WebGIS

WebGIS完成要素在线编辑之Silverlight调用FeatureService实现编辑功用

作者:xzly    发表时间:2015-07-09 14:14    来源:本站

      在本文中,完成对污染源数据的管理主要是经过FeatureService,FeatureService支持在线的地理要素编辑,并且可以将要素编辑的结果更新至后台的数据库中。在本文中,通过将之前新建的污染源数据库点要素增加到MXD文档中,然后将其公布成FeatureService(详细如何发布请看另一篇博文——http://www.cnblogs.com/potential/archive/2012/11/03/2752796.html)。

      在ArcGIS API for Silverlight中,提供了的EditorWidget工具,通过该工具即可实现对ArcSDE中地理要素的访问并进行相关的编辑。

      ArcGIS API for Silverlight中提供的EditorWidget工具包括了要素属性的编辑,要素外形的编辑,要素选中要素,删除要素等。下面就来看一下具体进程。

      新建一个项目:    

WebGIS完成要素在线编辑之Silverlight调用FeatureService实现编辑功用

项目阅读:

WebGIS完成要素在线编辑之Silverlight调用FeatureService实现编辑功用

之后我们在Expression Blend中编辑界面。大致想象如下:

WebGIS完成要素在线编辑之Silverlight调用FeatureService实现编辑功用

基本控件列表:

WebGIS完成要素在线编辑之Silverlight调用FeatureService实现编辑功用

这里我们声明了一个EditorWidget以及一个FeatureDataForm。我们主要用EditorWidget来实现要素的添加和删除,而用FeatureDataForm来实现要素属性的编辑。留意:EditorWidget自身也具有编辑要素属性的功用。FeatureDataForm同样支持更新数据到数据库,但是他只能修正已有的要素,不能实施添加要素的功能,一般用来编辑某一要素的属性或许显现某一要素的属性音讯。

在树立好基本的界面之后,下面开端正式的任务:

1. 我们需求添加一个供我们编辑的要素图层:FeatureLayer.在上一篇中曾经讲了如何发布要素效劳,这里我们援用上一篇发布的要素服务。示例代码如下:

<esri:Map x:Name="MyMap" Background="White" WrapAround="True" Grid.RowSpan="2"> <!--底图图层--> <esri:ArcGISTiledMapServiceLayer Url="http://www.arcgisonline.cn/ArcGIS/rest/services/ChinaOnlineStreetWarm/MapServer"/> <!--需要编辑的要素图层--> <esri:FeatureLayer ID="SourceLayer" DisableClientCaching="True" AutoSave="False" OutFields="*" Mode="OnDemand" Url="http://qzj-pc/ArcGIS/rest/services/RiverSourceMap/FeatureServer/0"/> </esri:Map>

以上我们添加了两个图层,一个是底图图层,一个是我们要编辑的要素图层。同时我们这里对要素图层进行了相关的设置。下面对FeatureLayer主要的属性进行一下说明:

OutFields: OutFields类型是一个字符串数组,表示该图层的要素表露那些字段(属性),也就是说用户可见的属性有哪些。比如上一篇我们定义了一个点要素,并添加了一系列的属性,如排放量,负责人,运转形状,经纬度等,而我如今并不想将这些信息展现给客户端,不想这些信息都被用户看见,那么我们通过设置这里的OutFields暴露的字段来实现。

本站内容来自互联网,如果您认为您的版权受到侵犯,请【点击此处】
当前标签  WebGIS  ArcGIS  Windows
WebGIS
WebGIS
工信部备案号 (申请中)  站长信箱 admin@upgis.com