Select to view content in your preferred language

Can we change layer's label symbol using dynamic layers in 10.1 using ESRI SL 3.0?

593
1
01-16-2013 07:39 AM
deleted-user-Ohz6rwd1kavx
Deactivated User
Hi,

I'm developing a silverlight mapping application using MS SL 4.0 + ESRI SL 3.0 and I have two questions related to some new functions avail in 3.0 and Server 10.1.

1) I have a map service that is 10.1 and supports dynamic layers.

I have an ArcGISDynamicMapServiceLayer my map pointing to this map service. I can use .LayerDrawingOptions to change the feature renderer and toggle labels on/off for one of the sub layers. So far, so good.

... however, I do not see how I can change the label's symbol (e.g. change font, text size, color, etc.).

The question: Is there a way to do this, and if so, how?

2) I'm actually doing this work to prepare a map + layers for high resolution printing. Leaving out the details of why I'm doing this, my hope was to use ArcGISDynamicMapServiceLayer + the ESRI SL PrintTask to create a web map with layers where I can control the layers' label text symbol....

... The ExportWebMap Specification (http://resources.arcgis.com/en/help/main/10.1/index.html#//0154000004w8000000) for Operational Layers (see code below) shows that drawingInfo contains a boolean showLabels, as well as another property labelingInfo.

It was my 'expectation' (now downgraded to 'hope') that if I construted an ArcGISDynamicMapServiceLayer in SL 3.0, that I would be able to change both feature and label 'rendering'.

The question: Is there something I am missing to create an Operational Layer with labelingInfo from a SL ArcGISDynamicMapServiceLayer, and if not, is my best hope this sample (http://resources.arcgis.com/en/help/silverlight-api/samples/start.htm#CreateWebMapObject), or something else?

Thanks

-Cory

"operationalLayers" : [
 {
  "url" : "<url1>",
  "title" : "<title1>",
  "opacity" : <opacity2>,
  "gdbVersion": "<gdbVersion>",
  "visibleLayers" : [
   <layerId1>,
   <layerId2>
  ],
  "layers" : [
   {
    "id": <sublayerId1>,
    "layerDefinition": {
     "definitionExpression": "<definitionExpression>",
     "layerTimeOptions": {
      "useTime": <true | false>,
      "timeDataCumulative": <true | false>,
      "timeOffset": <timeOffset1>,
      "timeOffsetUnits": "<esriTimeUnits>"
     },
     "drawingInfo": {
      "renderer" : {<renderer>},
      "transparency" : <transparency>,
      "scaleSymbols" : <true | false>,
      "showLabels" : <true | false>,
      "labelingInfo" : {<labelingInfo>},
     },
     "source": {<layerSource>},
     "gdbVersion": "<Geodatabase version name>"
    }
   }
  ]
 }
]


-Cory
0 Kudos
1 Reply
SteveMorgan
Emerging Contributor
Corey,

I take it you have never had a response back on this question or figured it out?  I have been trying to modify the html request but it actually makes the labeling disappear instead of change font size or color.  Just curious if you had any success?

Thanks for your time.

Steve
IA
0 Kudos