Forums Neueste Beiträge
 

Design Frage

27/09/2009 - 17:03 von Harald Bacik | Report spam
Hallo

Ich arbeite mit VB 2008 & habe ein Usercontrol, auf dem 1 Grid, 1
TabControl (mit 8 TabPages & 5 Grid's) & ein WordKlon drauf sind.
Um dieses UserControl zu laden zeigt mir die StopWatch Klasse (Bei
InitializeComponents) 4000 MS an.
Da dann auch noch Daten aus einer DB mit eingelesen werden wird die
Ladezeit noch erweitert.
Dieses Control muss bei jedem Kunden geladen werden, da es ein Control
von mehreren ist, das Auftragsdaten/Kunden anzeigt.

Kann ich das Control selbst beim Starten des Programms einmalig laden &
dann je nach Bedarf verwenden & weitergeben?

Hoffe Ihr versteht was ich meine - DANKE im Voraus
 

Lesen sie die antworten

#1 Peter Götz
28/09/2009 - 13:28 | Warnen spam
Hallo Harald,

Ich arbeite mit VB 2008 & habe ein Usercontrol, auf dem
1 Grid, 1 TabControl (mit 8 TabPages & 5 Grid's) & ein
WordKlon drauf sind.
Um dieses UserControl zu laden zeigt mir die StopWatch
Klasse (Bei InitializeComponents) 4000 MS an.



Ich denke dass 4 Sekunden kein akzeptabler Wert für das
Laden eines Controls ist. Ein Anwender, der u.U. auf das
Laden mehrerer solcher Controls warten muss, dürfte
vermutlich ziemlich nervös werden.

Da dann auch noch Daten aus einer DB mit eingelesen
werden wird die Ladezeit noch erweitert.



Wie, wo werden Daten aus einer DB gelesen?
In eine Variable, DataTable usw. des UserControls?

Dieses Control muss bei jedem Kunden geladen werden,
da es ein Control von mehreren ist, das Auftragsdaten/Kunden
anzeigt.



Ich kann mir eigentlich kein Control vorstellen, das eine
Ladezeit von 4 Sekunden hat.
Falls darin auch die Ladezeit von Daten aus einer DB enthalten
sind, solltest Du Dein Control so gestalten, dass es erst mal
vollstàndig (ohne DB-Daten) geladen wird und erst dann über
eine Methode dieses Controls die benötigten Daten aus der
DB geladen werden. Je nach Datenmenge, bzw. der für das
Laden dieser Datenmenge erforderlichen Zeit, solltest Du u.U.
diesen Vorgang in einen separaten Thread auslagern um so
die Anwendung (Hauptthread) nicht über einen làngeren
Zeitraum zu blockieren.


Kann ich das Control selbst beim Starten des Programms
einmalig laden & dann je nach Bedarf verwenden & weitergeben?



Was genau willst Du beim Starten des Programms laden?
Was willst Du wohin weitergeben?

Hoffe Ihr versteht was ich meine -



Bisher nicht so recht.
Vielleicht solltest Du Dein UserControl mal etwas anschaulicher,
insbesondere was den "WordKlon" betrifft beschreiben und auch
wann welche Daten von wo wohin geladen werden sollen.

Gruß aus St.Georgen
Peter Götz
www.gssg.de (mit VB-Tipps u. Beispielprogrammen)

Ähnliche fragen