I have a custom webpart, with custom properties.
The behavior:
I edit the webpart, and make a change to a custom property and click
the apply button in the property pane. At this point the properties
in the property pane will show the new values, but the rendered
webpart does not. I click apply a second time, and then both the the
webpart and the property pane both so the change. Basically I have to
click the apply button twice to my the property changes take effect.
My webpart implements:
CreateChildControls
IWebEditable.CreateEditorParts
IWebEditable.WebBrowsableObject
and a handful of properties
My EditorPart implements:
CreatesChildControls
Render
ApplyChanges
SyncChanges
and a handfull of Controls
My understanding is that ApplyChanges is supposed write changes to
the webpart, SyncChanges is suppose to update the changes in the
propertyPane, and Render draws the propertyPane.
What appears to be happening is the webpart is being render before
the changes are applied. Hence the why the changes show on the 2nd
click of apply.
Am I missing a method somewhere? Or any thing else I should look at?