Entwickler-Ecke
WinForms - Flackern unterdrücken
texMan - Mi 24.01.18 19:31
Titel: Flackern unterdrücken
Hallo zusammen,
ich habe noch eine Frage.
Wie kann ich das Flackern, das beim Aktualisieren der Controls entsteht, unterdrücken?
Z.B.
mYForm.SuspendLayout() funktioniert leider nicht.
Grüße
Jürgen
Moderiert von Th69: C#-Tags hinzugefügt
Ralf Jansen - Mi 24.01.18 19:39
Da gibt es keine wirkliche allgemeine Lösung. Du mußt uns schon sagen was für ein Control gemeint ist und was du ungefähr machst (ein Label oft zu aktualsieren ist was anderes als eine selbstgezeichnete Animation auf ein Panel zu bekommen).
Im Zweifel bräuchten wir auch Code um das nachstellen zu können. Im schlimmsten Fall ist das auch kein richtiges Winforms Problem sondern eins das mit speziellen Treibern/Graphikkarten auftritt.
texMan - Mi 24.01.18 19:59
Echt super wie schnell man hier Hilfe bekommt.
Es handelt sich um ein ActiveX-Control in dem Dokumente geladen und gespeichert werden. Teilweise mehere Durchgänge hintereinander. Dabei wir jedesmal auch das ActiveX-Control aktualisiert.
texMan - Do 25.01.18 10:32
Leider wird die SetStyle() Methode von dem ActiveX-Control nicht unterstützt.
Th69 - Do 25.01.18 11:49
ActiveX [
https://de.wikipedia.org/wiki/ActiveX]-Controls sind ja auch keine auf WinForms-Control basierenden Elemente, sondern auf COM.
Probiere mal
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9:
| protected override CreateParams CreateParams { get { CreateParams handleParam = base.CreateParams; handleParam.ExStyle |= 0x02000000; return handleParam; } } |
in der Form-Klasse (dies kann aber auch weitere negative Effekte auf andere Controls der Form haben). Du könntest auch mal nach "activeX erase background" suchen (das ist der häufigste Fall bezüglich des Flickerns).
Ist es denn zwingend erforderlich, daß das ActiveX-Control so häufig aktualisiert werden muß? Geht es um "Batch"-Vorgänge? Muß der User das dann alles zwingend sehen (wäre evtl. ein unsichtbares ActiveX-Control nicht auch möglich)?
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2024 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!