Course info
Mar 27, 2015
1h 7m

This course addresses the problem of showing multiple instances of a shell in a Prism application. This course will introduce viewers to three common problems that are encountered when dealing with multiple shells. We learn how we can crash our application with exceptions, and how to utilize Prism features to prevent those exceptions. We discuss the best way to show multiple instances of shell, and cover some options that we want to avoid completely. Lastly, this course will solve one of the more complex issues around controlling view composition when dealing with multiple instances of a shell as well as child views.

About the author
About the author

Brian Lagunas is a Microsoft MVP, a Microsoft Patterns & Practices Champion, Director of Technology for INETA, co-leader of the Boise .Net Developers User Group (NETDUG), board member of Boise Code Camp, speaker, trainer, author, and original creator of the Extended WPF Toolkit.

More from the author
More courses by Brian Lagunas
Section Introduction Transcripts
Section Introduction Transcripts

Course Introduction
You are watching this course because you are a Prism developer. You write composite WPF line abysses applications using the Prism library. You could be a beginner who just started learning Prism. Maybe you have watched some courses, done some tutorials, or you could be an experienced developer who's been using Prism for a long time now. Whichever is the case for you, chances are you've run into some roadblocks. You've hit some problems writing your production applications with Prism. Hello, this is Brian Lagunas, and welcome to my course, Prism Problems and Solutions: Showing Multiple Shells. This is the first course in a series of courses, in which we take a problem/solution approach to Prism application development. If you're new to this course series, let's take a moment to discuss how each course in this series will be laid out. Each course will identify one or more problems. In order to demonstrate the problem, we will either see a sample or implement the code required to reproduce the problem we are currently focused on. Each problem will have a corresponding solution. After we have identified the problem, reproduced the problem, we will then discuss possible solutions. We will then write the code required to implement a solution to its corresponding problem. By the end of the course you should have all the information you need in order to implement the solution into your production Prism application.

Avoid Exceptions
So you want to show multiple shells, do you? Well, before we do that, we have to learn how to avoid exceptions. Hi, I'm Brian Lagunas, and in this module we're going to do just that. We're going to see why the exceptions occur, and then we're going to fix them.

Best Practices for Showing Multiple Shells
We just saw in the last module how to get rid of those pesky little exceptions that show up when we're trying to deal with multiple shells. And we did that with scoped regions. But now that we have that solved, we can move on. We can actually work on going through the process of how we're going to actually show these multiple incidences of these shells. Hi, I'm Brian Lagunas and in this module, I'm going to show you the best practice for showing multiple shells.

Controlling View Composition
This is it! We're almost there. We're almost at the point to where we can start showing multiple shells in a production application. We fixed the issues for the exceptions. We know how to use a dialog service to show our multiple shells without having to have all the side effects you might get with using a secondary Bootstrapper, so what's next? What's the last thing we need to solve before we could actually implement multiple shells? Hi, this Brian Lagunas and in this module, we're going to talk about the last problem we have to solve, which is Controlling View Composition.