ArcObjects Library Reference (Carto)  

ILayerDescription.SetSelectionSymbol Property

Indicates if the selected set of features is drawn using the SelectionSymbol.

[Visual Basic .NET]
Public Property SetSelectionSymbol As Boolean
[C#]
public bool SetSelectionSymbol {get; set;}
[C++]
HRESULT get_SetSelectionSymbol(
  VARIANT_BOOL* setSymbol
);
[C++]
HRESULT put_SetSelectionSymbol(
  VARIANT_BOOL setSymbol
);
[C++]

Parameters

setSymbol [out, retval]   setSymbol is a parameter of type VARIANT_BOOL setSymbol [in]   setSymbol is a parameter of type VARIANT_BOOL

Product Availability

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

Remarks

This property should be set to TRUE if you wish to use something other than the default selection symbology. For example, you want to use a star symbol to indicate selected point features. If SetSelectionSymbol is set to TRUE, SelectionColor will not be applied. You will need to set the selection color as part of the properties of the new selection symbol object.

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.Blue = 255;

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

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

See Also

ILayerDescription Interface