AnsweredAssumed Answered

CompositeSymbol update issue

Question asked by HuyHo on Oct 1, 2015

After I updated my application to the latest SDK release (10.2.6), my composite symbols do not refresh anymore when I make an update.  Reviewing the release notes, I found that this is a known issue:

Changes to an existing CompositeSymbol (adding, removing, or updating the symbols it contains) are not reflected in the display.
Workaround: Recreate, modify, and re-apply the composite symbol as illustrated in the following example.

 

// create a new composite symbol

var newCompoiteSymbol = new CompositeSymbol(); 

 

// loop through all symbols in the existing composite symbol

foreach (Symbol s in oldCompositeSymbol.Symbols) {

     // copy symbols from the existing composite symbol to the new one

     newCompoiteSymbol.Symbols.Add(s);

} 

 

// make desired changes for newCompoiteSymbol here ... 

 

// apply the new composite symbol

foreach (Graphic g in gOverlay.Graphics)

     g.Symbol = newCompoiteSymbol;

I have a couple of questions regarding this:

 

1) This was not an issue in 10.2.5, why is it an issue in 10.2.6? 

 

2) Is there plan to address this issue in the future, if so -- when?  We use Composite symbol extensively in our application, with the underlying design that the Graphic and CompositeSymbol is permanently linked.  We will have to make a lot of changes to work around this issue.  The workaround looks very inefficient and very inconsistent with how other type of symbols are updated.  We don't want to make all this changes and then revert all these changes again when the issue is addressed.

 

The CompositeSymbol is not something that's new. We are disappointed that the Dev team decided to release 10.2.6 with this breaking change.

Outcomes