Dear billyc,
You have to keep track of the dynamic panels created, and re-create them on each postback. Also, you have to re-create the controls within the dynamic panel on each postback.
WebDock and Web Splitter will then keep track of the dynamic panels' states, such as their sizes, and opened/collapsed/maximized state.
You may refer to the demo below for a sample implementation. In that demo, when you click the 'Toggle' button, a 'Breakpoints' tab will be added to the bottom panel. Then when you click the 'Simple Postback' button, you will find that the 'Breakpoints' tab will still be there. This is because we use a flag to remember whether the 'Breakpoints' tab should be shown, and re-create it accordingly on each postback.
http://demo.zettacube.com/Products/ZeeControls2/default.aspx?p=WebDock/Advanced/UpdatePanel.aspx
Regards
Technical Support
ZettaCube Limited