Can we use Winform's MDI Container as a shell

Topics: Prism v2 - WPF 3.5
Mar 31, 2010 at 12:53 PM

Can we use Winform's MDI Container as a shell?

How do i return DependancyObject from CreateShell() method in the bootstarpper class.

protected override DependencyObject CreateShell()


// creation

 return shell as DependencyObject;


 Do I need to host Winforms MDI Container inside WPF Window?



Apr 5, 2010 at 6:27 PM

Hi Shailendra,

I am not aware of your full scenario, but developing an application that uses the CAL with Winforms controls might be the best approach as Prism was meant to be used to “to create a composite application with WPF or Silverlight or upgrade an existing WPF or Silverlight application to a composite application” (from here). That is why, the CAL comes with two separate assemblies (one that depends on WPF and one that doesn't):

  • Microsoft.Practices.Composite.dll does not have any dependency with WPF.
  • Microsoft.Practices.Composite.Presentation.dll which does have dependencies with WPF. As UI Composition main functionality is included in this assembly, achieving the scenario you desire is not viable out of the box.

Some possible things that might interest you are:

Please let me know if this helps.

Damian Schenkelman