Hosting Windows Forms controles en ventanas nativas, clase de ventana = “estático”
-
11-09-2019 - |
Pregunta
necesito proporcionar un control de Windows Forms a una aplicación nativa (Visual Studio).
Así se crea un control y proporciono el asa.
A continuación, cuando compruebo la ventana nativa utilizando Spy ++, veo que mi control se envuelve en 'control' adicional clase de ventana = "estática" y el título "Se trata de una estática!". Tengo varios problemas con él:
- Cambiar el tamaño de los eventos enviados a mi control por una ventana de hosting tienen que ser re-enviado a la "estática" por lo que también se cambia el tamaño (de lo contrario mi controles obtienen parcialmente oculto dentro del tamaño de la estática).
- El estática no tiene
WS_EX_CONTROLPARENT
, lo que provoca KB149501 a aparecer (en pocas palabras, toda la aplicación se cuelga en el foco perdido). - Si aplico
WS_EX_CONTROLPARENT
, cuadro de lista dentro de las paradas estáticas volver a dibujar.
Creo que he estado haciendo algo mal, pero no estoy seguro de qué. Google no ayuda, ya estática es una palabra clave en C #, así por lo que se produce con bastante frecuencia en los resultados WinForms.
Solución
Yo sobre todo resuelto el problema nuevo trazado usando DoubleBuffered = verdad, así que probablemente eso es todo.
Todavía pienso que estoy haciendo algo mal, pero al menos funciona ahora.