wpf example PRISM-Riutilizzo dei punti di vista con le regioni minori-si può fare?



xamarin prism (1)

È possibile creare una separazione delle regioni a livello di shell con le regioni create dalle viste modulo utilizzando RegionScope. Qualsiasi area che crei senza un ambito è "globale" e non sono supportate due regioni con lo stesso nome nello stesso ambito.

Puoi leggere ulteriori informazioni su Region Scopes in questo articolo MSDN: http://msdn.microsoft.com/en-us/magazine/cc785479.aspx#id0090126

Sono un po 'un principiante PRISM, ma ho letto la documentazione della guida e non riesco a capire come ottenere quanto segue (questa è un'applicazione WPF)

Ho una Shell (Window) che ha 2 regioni chiamate 'region1' e 'region2'. nel metodo Initialize del mio unico modulo, sto registrando la stessa vista per ogni regione:

regionViewRegistry.RegisterViewWithRegion("Region1", typeof(View1));
regionViewRegistry.RegisterViewWithRegion("Region2", typeof(View1));

e quando lo View1 tutto è OK a questo punto in quanto crea 2 singole istanze di View1 e ne posiziona una in ciascuna regione.

Ora in View1 ho dichiarato la propria regione per l'iniezione di viste di bambini piccoli

<ItemsControl Name="MainRegion" cal:RegionManager.RegionName="MainRegion" />

Ora quando eseguo la mia semplicissima applicazione PRISM ottengo il seguente messaggio di eccezione:

"La regione con il nome specificato è già registrata: MainRegion"

il che suggerisce che non posso avere più istanze della stessa vista se quella vista dichiara le proprie regioni.

È corretto ?

sembra un enorme limite.

Voglio che la mia applicazione sia altamente modulare e che la vista si componga delle viste (attraverso le regioni) ecc.

O ho letto male la documentazione?