ArcGIS Web 编辑中只读字段和隐藏字段设置

0
分享 2012-12-04

1 需求来源

在与客户交流过程中,遇到这样一个问题:在Web端(如Silverlight程序中)进行要素属性编辑时,如何设置字段的只读,或者隐藏某些字段呢? 当时听到这个问题,第一反应是通过编辑模板来进行控制,但是并没有找到合适的地方。今天问了问其他同事,得知可以通过图层属性进行设置,于是进行了测试,真就成功了,这里要谢谢北京的张文老师。

2 数据设置 要进行web编辑,数据当然得来自ArcSDE,这里选择两个图层,其中一个待编辑的图层GEO_SUR_WS,另一个GEO_REGION则主要是作为底图。图层如下:


地图如下:


首先对待编辑图层进行属性设置,隐藏BM_L_WATER字段(取消复选框):


然后设置BM为只读字段:


字段已经设置好,为了方便Web端编辑,设置编辑模板:







在上述编辑模板中,可以看到,ArcGIS自动维护的字段(OBJECTID_1、SHAPE、SHAPE.LEN、SHAPE.AREA)均没有显示,我们设置了隐藏的字段BM_L_WATER,也没有显示,而BM字段虽然显示,却是灰色的,表明其不可编辑。 保存地图文档,将文档发布为地图服务,记住勾选Feature Access选项,以便在Web端使用编辑功能。


通过服务目录浏览刚刚发布的服务,可以看见有地图服务和要素服务:



3 程序测试 接下来通过程序进行测试,本例采用Silverlight API,XAML代码如下:
<Grid x:Name="LayoutRoot" Background="White">
<esri:Map x:Name="map">
<esri:ArcGISDynamicMapServiceLayer x:Name="hydroMap" Url="http://esri-huangd/arcgis/rest ... ot%3B
Token="n_RcVQLbzVGS5ThYnEdpJ8DXzDxyQ3CzLqERelrqlZWfqIdLISVBenN1quJTEDCySBY2mdDZJEqZ19YHGc3MlV2wDj_afN-YQkKlB1EzBMI."/>
<esri:FeatureLayer ID="sur_ws" DisableClientCaching="True" AutoSave="False" OutFields="*" Mode="OnDemand"
Token="n_RcVQLbzVGS5ThYnEdpJ8DXzDxyQ3CzLqERelrqlZWfqIdLISVBenN1quJTEDCySBY2mdDZJEqZ19YHGc3MlV2wDj_afN-YQkKlB1EzBMI."
Url="http://esri-huangd/arcgis/rest ... gt%3B
</esri:Map>
<esri:EditorWidget x:Name="MyEditorWidget" Map="{Binding ElementName=map}" Width="300" AutoSelect="False" AlwaysDisplayDefaultTemplates="True"
GeometryServiceUrl="http://tasks.arcgisonline.com/ ... ot%3B ShowAttributesOnAdd="True" Loaded="EditorWidget_Loaded"/>
</Grid>
后台代码如下:
private void EditorWidget_Loaded(object sender, RoutedEventArgs e)
{
string[] myLayerIDs = { "sur_ws" };
MyEditorWidget.LayerIDs = myLayerIDs;
}

编译运行,编辑器如下:


用编辑模板在图上绘制一个图形,自动弹出属性编辑对话框如下:


编辑完成后,再单独选择一个要素,点击属性编辑按钮,弹出属性编辑对话框,如下:



细心的读者可能已经发现,编辑要素时自动弹出的属性对话框与单独编辑属性弹出的对话框中,包含的属性不完全一样:前者少了个BM字段,即不包含只读字段。 总结:通过测试我们发现,可以在图层的属性对话框中设置字段的只读和隐藏。如果设置了字段隐藏,则字段在编辑模板中不会出现,而且在Web端属性编辑对话框中也不会出现。如果设置了字段只读,则在编辑模板中该字段还会出现,但是显示为灰色;而在Web端,当编辑要素时自动弹出属性对话框时,不会显示只读的属性,如果是单独选择要素并编辑属性,则会显示只读属性,但显示为灰色,不能编辑。

文章来源:http://blog.csdn.net/esrichinacd/article/details/8025283

0 个评论

要回复文章请先登录注册