Im using Esri version 100.15.4
I have a MultiLayerSymbol that is built like this
To Change the color i do the following:
private void Work(MultilayerSymbol symbol, Color color)
{
symbol.color = color
foreach(var symbolLayer in symbol.SymbolLayers)
{
if(!symbolLayer is VectorMarkerSymbolLayer vectorMarkerSymbolLayer)) continue;
foreach(var vectorMarkerSymbolElement in vectorMarkerSymbolLayer.VectorMarkerSymbolElements)
{
Work(vectorMarkerSymbolElement.Symbol, color)
}
}
}
For some reason the Color property of SolidFillSymbolLayer isnt changing
P.S
event doing
symbol.Color = color; without the recursion yields the same result
I am unable to reproduce the behavior. If you can share symbol's json I will be more than happy to look at it further.
Sadly i cannot share
but i managed to solved => i used ArcGis 2.8 and created the symbols again from similar examples from app6