Pregunta

Estoy escribiendo una aplicación en Prisma. Tengo un control de usuario y contiene dos controles <ContentControl>. Estos dos tienen regiones asignadas a ellos. El control de usuario está alojado en un Window que se está mostrando el uso de ShowDialog().
Estoy agregando la de mis puntos de vista a una región utilizando la vista descubrimiento y la otra que desea inyectar la vista en su región. El descubrimiento vista funciona bien. Sin embargo cuando intento y hacer referencia a la otra región para inyectar la vista tengo la excepción:

KeyNotFoundException
El gerente de la región no contiene el MyRegion región.

Cuando miro en las regiones RegionManagers ni la que estoy tratando de inyectar el punto de vista existe o el único ser que está utilizando vista descubrimiento.

¿Importa que estoy en una ventana distinta a la Shell? Pensé que sólo había una RegionManager, pero tiene que haber dos para mi punto de vista descubrimiento todavía no funciona ...? ¿O es porque tengo dos nuevas regiones están creando más tarde en el ciclo de vida de las aplicaciones? ¿O es porque las nuevas regiones que no están dentro de la MainRegion mi?

EDIT:
Después de hacer algo de investigación parece que se crea la Región pero no puede encontrar una instancia de la RegionManager por lo que no consigue añadió. ¿Alguna pista?

¿Fue útil?

Solución

Ordenado ahora. Que necesitaba para registrar el administrador de la región en el constructor de mi clase de presentador.
De esa manera las regiones de mi nueva ventana pudieron encontrar mi gestor de la región del mundo.

RegionManager.SetRegionManager(view as DependencyObject, regionManager);

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top