Hosting Windows Form controlli nelle finestre native, classe di finestra = “Static”
-
11-09-2019 - |
Domanda
ho bisogno di fornire un controllo Windows Form a un'applicazione nativa (Visual Studio).
Così ho creato un controllo e fornire la relativa maniglia.
Poi, quando controllo la finestra nativa utilizzando Spy ++, vedo che il mio controllo è avvolto nel 'controllo' aggiuntiva con classe di finestra = "Static" e il titolo "Questa è una statica!". Ho diversi problemi con esso:
- Ridimensiona eventi inviati al mio controllo da una finestra di hosting devono essere re-inviato al "Static", in modo che anche viene ridimensionata (in caso contrario il mio controllo ottenere parzialmente nascosto all'interno dimensioni della statica).
- Lo statica non ha
WS_EX_CONTROLPARENT
, che provoca KB149501 ad apparire (in breve, tutta la applicazione si blocca sul fuoco perso). - Se applico
WS_EX_CONTROLPARENT
, casella di riepilogo entro le fermate statici ridisegno.
Credo di aver fatto qualcosa di sbagliato, ma non sono sicuro che cosa. Google non aiuta, dal momento statico è un C # parola chiave pure in modo che si verifica molto spesso in WinForms risultati.
Soluzione
Io per lo più risolto il problema utilizzando ridisegno DoubleBuffered = True, quindi probabilmente è proprio questo.
Continuo a pensare che sto facendo qualcosa di sbagliato, ma almeno ora funziona.