ArcObjects Library Reference (Carto)  

ILayerDescription.SelectionSymbol Property

The selection symbol.

[Visual Basic .NET]
Public Property SelectionSymbol As ISymbol
[C#]
public ISymbol SelectionSymbol {get; set;}
[C++]
HRESULT get_SelectionSymbol(
  ISymbol** Symbol
);
[C++]
HRESULT putref_SelectionSymbol(
  ISymbol* Symbol
);
[C++]

Parameters

Symbol [out, retval]

  Symbol is a parameter of type ISymbol

Symbol [in]

  Symbol is a parameter of type ISymbol

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Remarks

Use this property when you want something other than the default symbology to indicate selected features. For example, you want to use a star symbol to indicate selected point features. SelectionSymbol is only applied if SetSelectionSymbol is set to TRUE. Otherwise, default symbols are used.

Only ISimpleMarkerSymbol, ICharacterMarkerSymbol, IPictureMarkerSymbol, ISimpleLineSymbol and ISimpleFillSymbol, IPictureFillSymbol are supported when accessing a MapServer object through AGSServerConnection (LAN or internet).

[C#]

The following sample code shows how to change the symbol of of a point layer's selected feature to a red diamond. It assumes that you already have a valid MapServer and MapDescription object, and that you are not working with a server context. However, if you are developing an ArcGIS Server application using a server context, you should not use New to create local ArcObjects, but you should always create objects within the server by calling CreateObject on IServerContext.

IMapServer mapServer;
IMapDescription mapDesc;

int layerID = 0;
string strMapName = mapDesc.Name;

// Select a feature
IQueryFilter filter = new QueryFilterClass();
filter.WhereClause = "Name = 'Halifax'";
IFIDSet FIDSet = mapServer.QueryFeatureIDs(strMapName, layerID, filter);

// Set color
IRgbColor color = new RgbColorClass();
color.Red = 255;

// Create new marker symbol
ISimpleMarkerSymbol markerSymbol = new SimpleMarkerSymbolClass();
markerSymbol.Size = 15;
markerSymbol.Color = color;
markerSymbol.Style = esriSimpleMarkerStyle.esriSMSDiamond;

// Hilite selected feature
ILayerDescription layerDesc = mapDesc.LayerDescriptions.get_Element(layerID);
layerDesc.SelectionFeatures = FIDSet;
layerDesc.SetSelectionSymbol = true;
layerDesc.SelectionSymbol = (ISymbol)markerSymbol;

See Also

ILayerDescription Interface