ESRI.ArcGIS.ADF.IMS
ShieldSymbol Class
Members  Example  See Also 
ESRI.ArcGIS.ADF.IMS.Display.Symbol Namespace : ShieldSymbol Class




LabelSymbol for drawing a predefined set of highway shields.

Object Model


Syntax

Visual Basic (Declaration) 
<SerializableAttribute()>
Public Class ShieldSymbol 
   Inherits LabelSymbol
Visual Basic (Usage)Copy Code
Dim instance As ShieldSymbol
C# 
[SerializableAttribute()]
public class ShieldSymbol : LabelSymbol 

Example

This example adds a new shield symbol renderer to an existing highways layer. It creates the ShieldSymbol, adds it to a new SimpleLabelRenderer, creates a new GroupRenderer, and adds both the existing symbol renderer and the new label renderer to the group renderer. Finally, it assigns the group renderer to the layer's renderer.
Visual BasicCopy Code
' Create a new ShieldSymbol and set its properties

Dim shieldSymb As New ShieldSymbol()

shieldSymb.Font = New FontInfo("Arial", 18, Drawing.Color.Black, FontStyle.Bold)

shieldSymb.LabelMode = ShieldLabelMode.NumericOnly

shieldSymb.Antialiasing = False

shieldSymb.MinSize = 2

shieldSymb.ShadowColor = Drawing.Color.Gray

shieldSymb.Transparency = 0

shieldSymb.Type = ShieldType.Rect



' Retrieve layer and its current SimpleRenderer

Dim layer As FeatureLayer = mapView.Layers.FindByName("Highways")

Dim rend As SimpleRenderer = layer.Renderer



' Create a new label renderer to contain our new symbol

Dim lblRend As New SimpleLabelRenderer()

lblrend.LabelField = "HWYNAME"

lblrend.Symbol = shieldSymb



' Create a group renderer and add the new label renderer and the symbol renderer

Dim groupRend As New GroupRenderer()

groupRend.Renderers.Add(lblRend)

groupRend.Renderers.Add(rend)

layer.Renderer = groupRend

C#Copy Code
// Create a new ShieldSymbol and set its properties 

ShieldSymbol shieldSymb = new ShieldSymbol(); 

shieldSymb.Font = new FontInfo("Arial", 18, Drawing.Color.Black, FontStyle.Bold); 

shieldSymb.LabelMode = ShieldLabelMode.NumericOnly; 

shieldSymb.Antialiasing = false; 

shieldSymb.MinSize = 2; 

shieldSymb.ShadowColor = Drawing.Color.Gray; 

shieldSymb.Transparency = 0; 

shieldSymb.Type = ShieldType.Rect; 

  

// Retrieve layer and its current SimpleRenderer 

FeatureLayer layer = mapView.Layers.FindByName("Highways"); 

SimpleRenderer rend = layer.Renderer; 

  

// Create a new label renderer to contain our new symbol 

SimpleLabelRenderer lblRend = new SimpleLabelRenderer(); 

lblrend.LabelField = "HWYNAME"; 

lblrend.Symbol = shieldSymb; 

  

// Create a group renderer and add the new label renderer and the symbol renderer 

GroupRenderer groupRend = new GroupRenderer(); 

groupRend.Renderers.Add(lblRend); 

groupRend.Renderers.Add(rend); 

layer.Renderer = groupRend; 

    

Remarks

This symbol labels line features with highway shields. Each shield displays a value from the attributes for the layer, typically the highway number. Note that the values to display come from the field defined in the renderer containing this symbol, either SimpleLabelRenderer.LabelField or ValueMapRenderer.ValueField.

Four types of shields are available: U.S. Interstate, U.S. Highway, white rectangle, and white oval. See the Type property for more information.

ShieldSymbol is valid only with line features. ShieldSymbol is not valid with ArcMap Server image services.

Inheritance Hierarchy

System.Object
   ESRI.ArcGIS.ADF.IMS.Display.Symbol.Symbol
      ESRI.ArcGIS.ADF.IMS.Display.Symbol.LabelSymbol
         ESRI.ArcGIS.ADF.IMS.Display.Symbol.ShieldSymbol

See Also

© 2010 All Rights Reserved.