I have searched and found a lot of questions and answers concerning login screens for prism. They seem to be concerned however with having the login screen show before prism even loads up modules. I have no desire for that.
I have my shell, and in the shell it has a grid with various containers that act as regions. This is how I want the program to look when my user is logged in.
Before I get to this screen, I want a connection module to take up the whole application window prompting for a user name, IP address and port with a connect button. The problem I'm finding is that there's no appropriate place it seems to navigate to this view that will allow me to take up the whole window. The only way I can think of to do this is to have a content control region in the grid that spans all of the rows and columns, which seems to somehow work in overlaying over the rest of the regions.
This seems sloppy however and surely there is a better approach than this. Should I have my shell only be a single contentcontrol where a main application controller first loads up the login module view, and then when it's connected it fires off an event that it's connected which allows the regular "shell" view to load in its place after the login view is unloaded and disposed of?
Create an event for logging in (assuming you've read up on EventAggregation). Then create a login module containing a view/viewmodel for the login dialog, create a class for the module itself and in the initialize method, Subscribe to the ShowLogin event and create the Login view. Then in the bootstrapper (or the shell), get the ShowLogin event and publish to it.