Apr 16, 2009 at 7:15 PM
Edited Apr 16, 2009 at 7:18 PM
i'm working on a Composite Silverlight application and i've reached a point where i need some advice on the architecture i'm designing.
Here's the simplified scenario:
The SL application loads two modules A and B.
Each module has a view of its own, view A and view B, respectively.
Each view has a presentation model with business data and a controller of its own.
I want to inject both views in the same region, but this views will be visible interchangeably.
The application loads with View A active and visible.
It has a button. If i press it, View A disappears, and gives place to View B.
View B has a button, if i click it, View B closes and View A appears.
I've implemented this using the controller command delegates to publish an event subscribed by the other controller.
When handling the event, the controller removes the view from the region.
* Should i use a controller, that controls both controllers ? I mean, a higher lever controller. The actual implementation is becoming kind of limited.. However i don't want to break the pattern.
* If want to implement an animation, where both views are partially seen at some point, like one slidding one over the other, should i create a composite view with these views, instead of doing that on the shell ?