I am currently building a custom property which is a collection of custom properties. Parsing and storing of this collection works fine as I transform the whole tree into an XML-document.
When I open the page the first time, the 'CreateEditControls' of the collectino is called, which creates property-controls for every property inside. Every property-control creates the necessary property-controls for it's properties (PropertyXhtmlText, PropertyPageReference, etc.).Afterwards, SetupEditControls is called which loops through the property-controls and calls 'SetupControl' for every one. These calls call SetupControl for their sub-controls.
The problem is with the postback. When I click 'Save', the method 'CreateEditControls' is called for the collection and property-controls are (re-)created. But for some reason, while creating the property-controls, the CreateEditControls-method of the sub-properties is never called.This results in SetupEditControls to fail.
Can anyone explain why the method of the sub-properties isn't called the second time?
Or is there a different way of re-creating the controls?
The trick is to craete the properties every time, and on prerender save the new xml structure, and use that for recreating.
Check this prosject
A little tip. Use the Property SaveData and LoadData instead of the ParseToSelf() and Value.ToString() since the load and save handle the LinkCollection correct
I suggest looking at this:
It sounds like it could be doing just what you are trying to do?