Are you apply the query filter, do you define the where clause with the table names qualified for the fields? If you look at the displayselectionset from the IDisplayTable, are there any rows selected?
Strange. Are you defining the unique value renderer and the custom selection symbol in your code? If you back up and set the layer's symbology and selection symbol in ArcMap (if available) for example and load the lyr or mxd in your engine application, do you get the same problem? Do you get the problem with the selection not drawing in ArcMap too. What if you use a simple symbol for the selection, do you get the same problem?
// symbol is current symbol, // enumColor is just a predefined style gallery color ramp symbol = GetFillSymbol( symbol as ISimpleFillSymbol, enumColors.Next(), 1 ); private ISymbol GetFillSymbol( ISimpleFillSymbol simpleFill, IColor nextColor, double size ) { if ( simpleFill == null ) simpleFill = new SimpleFillSymbolClass(); ILineSymbol lineSymbol = new SimpleLineSymbolClass(); lineSymbol.Width = size; simpleFill.Color = nextColor; simpleFill.Outline = lineSymbol; return simpleFill as ISymbol; } //And I add it to the renderer with: uniqueValueRenderer.AddValue( currentBreak, ClassifyFieldName, symbol );
Have you raised the selection changed event? If the selection is done on the featurelayer it is the IFeatureSelection.SelectionChanged method.
IFeatureSelection featureSelection = featureLayer as IFeatureSelection; featureSelection.SelectionChanged();
Los miembros registrados pueden publicar, seguir actualizaciones y más. ¿Nuevo aquí? Regístrate gratis.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.