Entwickler-Ecke

WinForms - UserControl Aufbau sehr langsam


pycak - Di 10.02.09 21:15
Titel: UserControl Aufbau sehr langsam
Hallo zusammen,

ich habe in eine Form ein Panel platziert und in dieses Panel lade ich ein UserControl mit 14 TextBoxen.

Problem: wenn ich bei UserControl ein Backgroundimage setze, lädt UserControl sehr langsam (alle Textboxen nacheinander).
Backgroundimage ist 50Kb groß.

Frage: wieso lädt UserControl so langsam?

Gruß Pycak


pycak - Mi 11.02.09 19:37

hat keiner eine Idee???


Ralf Jansen - Mi 11.02.09 19:59

Winforms ist insgesamt langsam. Insbesondere solang der Debugger dranhängt.
Hast du mal ohne Debugger probiert ob die Gewschwindigkeit dann erträglich ist?


pycak - Mi 11.02.09 21:29

ja, ohne Debugger ist die selbe Geschwindigkeit.

Ich habe das Gefühl, dass beim hinzufügen von jeder einzelner TextBox das Fenster komplett neu gezeichnet wird.


JüTho - Do 12.02.09 10:39

user profile iconpycak hat folgendes geschrieben Zum zitierten Posting springen:
Ich habe das Gefühl, dass beim hinzufügen von jeder einzelner TextBox das Fenster komplett neu gezeichnet wird.

Hast Du im UserControl SuspendLayout und ResumeLayout eingebunden? Vorbild wäre die Designer.cs eines jeden Formulars.

Jürgen


pycak - Do 12.02.09 20:06

Suspendlayout und ResumeLayout hat keine Abhilfe gebracht:

C#-Quelltext
1:
2:
3:
4:
5:
this.panelHauptseite.SuspendLayout();
UserControlProfile Profile = new UserControlProfile();
this.panelHauptseite.Controls.Add(Profile);
this.panelHauptseite.ResumeLayout();
this.panelHauptseite.PerformLayout();


Ich habe folgendes probiert: panelHauptseite habe ich Baggroundimage aktiviert dann

UserControlProfile irgend eine Farbe zugewisen = Aufbau schnell
UserControlProfile Transparente Farbe zugewisen = Aufbau langsam warum???