I think I understood something really wrong!
I have a Model like this:
A collection of reports. A Report can have a collection of ReportItems, a ReportItem can have a collection of ReportSubItems
Now to the UI:
I want to display all the reports in a TabControl.
The content of one TabControlItem is a (Tile-)view, where one can see all the ReportItems belonging to the currently selected Report.
The content of one Tile is another (Tile-)view where one can see all the ReportSubItems. A ReportSubItem is a complex control (including a chart).
When I use an approach similar to the "Simple MDI Sample":
I call ActivateItem(ReportViewModel) for all the reports.
In each Report, ActivateItem(ReportItemViewModel) for all the ReportItems is called
An finally ActivateItem(ReportItemSubItem) is called for all ReportSubItems.
As this is done synchronously and as the controls are fairly complex, the applications startup behavior is really bad.
(Doesn't have to do anything with loading the data. Even with no data it is very bad)
All the controls are loaded, although only the active tabItem should be loaded.
So, of course this is really bad design, but how is it done correctly using Caliburn Micro???
Hope I could make myself clear. If not, I can refine! :)
I guess I missed something really big - but what? Please tell me!
Thanks for any kind of information concerning this topic. Thanks a lot!
All the best and greetings,