Michael, Darren et al,
I know I've been off this for a while BUT I've actually have moved a little further with the Parent/Child control idea. Hitting a minor snag again (hence me being back here :-))
To explain, I have a treeview (tv) in the leftpane and parent module with 4 child controls - PView, Pedit, CView, CEdit - in the content pane. The tv has a 2tier hierachy - parent/child nodes.
As the user selects a Parent node in the tv, the appropriate control is shown in the parent module, ie: PView is shown. Likewise Child node in the tv is selected, CView control in Parent module shows.
If the user wants to edit a PView or CView, they click the Edit btn on the control and the corresponding PEdit or CEdit is displayed.
All that works through IMC etc etc although there are way too many Page_load hits as the user goes from view to edit. (I got around the populating/repopulating issue by calling OnLoad in the "onModuleCommunication" event and once the Info object for the control had been set).
Phew, I didn't want to be longwinded here but anyway...
Here's the snag I'm hitting and all WAS working so I'm not sure what I've done :-)
On the PEdit (child control in module), when the user selects the update button, the data is written back to the db with no loss from the input controls - text boxes etc. BUT...
On the CEdit, some data is persisted OR viewstate is maintained and that is passed to the Info object for that control, however, some input boxes (namely a File selection control and combo boxes) don't maintain the data (file choice) or the selection (combo box) and that data is not there to pass into the Info object for db update...
LOL, make any sense? Wish I could send code but I'd be fired, LOL.
The short question is - is there any obvious reason why data the user has input into a control is lost BEFORE the code behind the update button is hit. I see the Page_Load being run prior to the code behind the update button..
Oh well. I'm about to post a different thread on making modules visible/not-visible at run-time. That may be the new tack I'm heading down. Might investigate the skin/pane idea and insert modules at runtime, dynamically...
Thanks for any input!