/ / ¿Problemas al actualizar los controles de las formas de ganancias en WPF Host? - c #, wpf, winforms, controles de usuario, prisma

¿Problemas con la actualización de los controles de formularios en WPF Host? - c #, wpf, winforms, controles de usuario, prisma

He estado buscando en Prism para alojar una aplicación Winforms antigua. Esto se está utilizando en nuestra migración de Winforms -> WPF en nuestra empresa. Sin embargo, me he encontrado con algunos problemas.

En resumen tengo un proyecto esbozado así:

Proyecto DataManager WPF

Módulo MEF que al inicializar registra una vista.Con el gerente regional y referencias al antiguo proyecto Winforms. - Vista: que contiene un control de usuario de WPF y un WindowsFormsHost que apunta a la vista principal del proyecto winforms anterior.

Proyecto WinManager de DataManager Contiene un módulo antiguo que necesita ser inicializado con vistas

Anfitrión Contiene la cáscara y el bootstrapper. - Shell tiene la región principal en la que se inyecta la vista de DataManager de WPF.

Así que el problema que tengo es el siguiente. La vista anterior de Winforms se carga correctamente en el shell de WPF a través de la nueva vista de WPF. Sin embargo, cualquier contenido agregado a la vista después de esto no se actualiza. Intenté agregar algunos botones a la pantalla. También intenté borrar todos los controles.

Mirando por aquí, fui con la sugerencia de escuchar el evento Size Changed y llamar a Child.Refresh en el WPFHost, pero aún así esto no funcionó.

Es este un problema específico de WPF como se discute aquí: ¿WPF actualiza el dibujo similar a los formularios Windows Forms?

¿O es un problema el no actualizar correctamente la vista en el administrador de región? WPF, Prism v2, Región en un diálogo modal, agregar región en el código detrás

¡Ninguno de los cuales parece funcionar!

¿Quizás necesito disparar un redibujado o similar en el control de winforms? Edición: llamar a una actualización () después de actualizar la interfaz de usuario no resolvió el problema.

Edición 2: ¡También probé esto en la antigua aplicación Winforms (.net 2.0) y se mostró correctamente!

Respuestas

0 para la respuesta № 1

Ok, he añadido un proyecto Winforms estándar con algunosControles en lugar del proyecto heredado que estoy usando y funcionó. Es posible que falten algunos pasos en la inicialización del proyecto de formularios heredados.