Win/c# Maske beim Laden schon zeigen

Hallo
im Form Load (Windows)

werden viele Daten geladen das dauert

kann man gut so testen:
System.Threading.Thread.Sleep(10000);

Die Maske sollt schon füher angezeigt werden (auch wenn noach nicht alle Daten da sind - Die Maske kommt aber erst wenn alles in Form_Load ausgeführt wurde.)

Ich habe gedacht so was wie:
this.Refresh();
vor dem laden der Daten
geht nicht - wer hat einen Tipp ? Danke Sam

Hallo Sam,

tja, das ist ein Problem, um das man drumrumprogrammieren muss (neudeutsch: workaround):

Vorgehensweise: man zeigt die Form an und dann finden die Initialisierungen statt.
Angenommen, Deine Form ist die Start-Form. Dann hängst Du eine Starter-Klasse mit einer Main-Methode vornedran, die die eigentliche Form instantiiert, mit Form.Show() anzeigt und dann in der Form eine Methode aufruft, die die Initialisierungen durchführt. Direkt nach Form.Show() und immer in der Initialisierungsmethode, wenn sich an der Oberfläche was tun soll (z.B. Fortschrittsbalken), noch ein Application.DoEvents() dazwischensetzen.

Hat’s geklappt?

Schöne Grüße
Thomas