Hi,
Based on my understanding, you should be able to create a new Shell in your application at any time by following the same steps that the bootstrapper does to create the main Shell:
Regarding the regions of the secondary Shells, if your application will have several windows or will reuse views in different Shells, then I believe it could be appropriate to use an scoped RegionManager for each Shell to avoid conflicts between region names (you can obtain a new RegionManager using the CreateRegionManager method.) Take into account that the container only has the RegionManager of the main Shell registered; therefore, you will need to manage the access to the scoped RegionManagers of the secondary windows.
Also, in order to access the appropriate RegionManager for a view depending on the Shell it's being shown on, you might find the RegionManagerAwareBehavior described in the following blog post useful:
I hope this helps,
Damian Cherubini
http://blogs.southworks.net/dcherubini
Based on my understanding, you should be able to create a new Shell in your application at any time by following the same steps that the bootstrapper does to create the main Shell:
- Create a Shell instance using the container.
- Set the corresponding RegionManager using the SetRegionManager method.
-
Invoke the UpdateRegions method to register the regions in the RegionManager.
Regarding the regions of the secondary Shells, if your application will have several windows or will reuse views in different Shells, then I believe it could be appropriate to use an scoped RegionManager for each Shell to avoid conflicts between region names (you can obtain a new RegionManager using the CreateRegionManager method.) Take into account that the container only has the RegionManager of the main Shell registered; therefore, you will need to manage the access to the scoped RegionManagers of the secondary windows.
Also, in order to access the appropriate RegionManager for a view depending on the Shell it's being shown on, you might find the RegionManagerAwareBehavior described in the following blog post useful:
I hope this helps,
Damian Cherubini
http://blogs.southworks.net/dcherubini