Hosting Windows Forms controles en ventanas nativas, clase de ventana = “estático”

StackOverflow https://stackoverflow.com/questions/1835332

  •  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:

  1. 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).
  2. 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).
  3. 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.

¿Fue útil?

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.

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