Estoy usando datatemplate para cargar mis vistas usando el descubrimiento PRISM 4. Tengo la necesidad de crear la vista/modelo de vista varias veces en lugar de reutilizar las instancias existentes, por lo que establezco x: Shared = false en el recurso, pero solo tiene impacto en el modelo de vista. Puedo confirmar que el modelo de vista no se reutiliza, pero la vista sí. El constructor de vista solo se llama una vez la primera vez que se llama. He leído publicaciones similares aquí, pero sus soluciones no funcionaron para mí. Quiero saber si puedo ampliar el cargador/localizador de recursos y asegurarme de que respeta el indicador Compartido.DataTemplate x: Shared = false no tiene ningún impacto en la vista
Así es como se define mi plantilla:
<DataTemplate DataType="{x:Type CVM:MyViewModel}" x:Shared="False">
<V:MyView />
</DataTemplate>
¿Alguna solución sin tener que cambiar el diseño? – DotnetEng
No sé, no he usado prisma y realmente no puedo pensar en nada elegante. –
En Prism usted controla si quiere singleton o no a través del atributo 'PartCreationPolicy'. 'Shared' = singleton,' NonShared' = una nueva instancia. ¿Ha decorado su vista con '[PartCreationPolicy (CreationPolicy.NonShared)]'? –