title: Creating multiple instances of PRISM views with MEF
body: <p>In my application I want to create multiple instances of the same view using PRISM/MEF</p>
  
  <p>Both my view and the view model has got PartCreationPolicy non shared but it doesn't create multiple views. Instead it changes the content in the already opened view.</p>
  
  <p>Top part of the Customer view </p>
  
  <pre><code>[ViewExport("CustomerView")]
  [Export]
  [PartCreationPolicy(CreationPolicy.NonShared)]
  public partial class CustomerView : UserControl
  {
      public CustomerView()
      {
          InitializeComponent();
  
      }
  </code></pre>
  
  <p>Top part of the CustomerViewModel</p>
  
  <pre><code>//[Export(typeof(CustomerViewModel))]
  [Export]
  [PartCreationPolicy(CreationPolicy.NonShared)]
  public class CustomerViewModel : NotificationObject, INavigationAware
  {
      private ICustomerRepository _custRepository;
  </code></pre>
  
  <p>This is how I call the view passing customer id.</p>
  
  <pre><code>        UriQuery parameters = new UriQuery();
          parameters.Add("CustomerID", CurrentItem.CustomerID.ToString());
  
          _regionManager.RequestNavigate(RegionNames.MainRegion,
                                          new Uri("CustomerView" + parameters.ToString(), UriKind.Relative),
                                          NavigationCompleted);
  </code></pre>
  
  <p>When I call the view using ServiceLocator.GetInstance it opens up a new view everytime but I cannot pass the customer ID.</p>
  
  <pre><code>         _regionManager.Regions[RegionNames.MainRegion].Add(_serviceLocator.GetInstance&lt;CustomerView&gt;());
  </code></pre>
  
  <p>Please help me on this. What I exactly want to do is create multiple instances of same view passing some ID (customer ID for example)</p>