Bootstrapper.Run() and Threading

Topics: Prism v2 - Silverlight 2
Feb 24, 2009 at 7:05 PM

I recently added a new SL project to my solution that operates as a preloader to show download progress of the shell.xap containing the Prism framework and startup modules.   Once downloaded the preloader sets the shell.xap as the active application and the shell projects App.xaml file is executed.  The download progress and transition from preloader to shell.xap works fine.  However there is 5-6 seconds of white screen time that occurs while the shell.xap bootstapper.Run() is executed.  To deal with this 5-6 second delay I implemented a second splash screen that  simply updates a textbox with a brief 3-4 words of what is happening in the bootstrapper.run(); (Very similar to the logging information);  I am now trying to call the bootstrapper.Run() on a background thread while using dispatcher to update UI calls.  This has proved difficult for me because I am challenged with the CreateShell override where I must execute that code on the UIthread asynchronously while also trying to produce a return type for that method that is not null;  I may be splitting hairs here (pun intended) but if anyone has any suggestions that would be great.