Benutzer mit den meisten Antworten
Endlosformular

Frage
-
Hallo,
ich benötige einen Art Endlosformular, wie man das bei Acces nennt, also einen scrollbare Liste, die Datansätze oder Klassen anzeigt, in einer Form, die weit über das hinausgeht, was eine Listbox anzeigen kann.
Das funktioniert auch schon soweit.
Ich zeige Usercontrols als Formular an, die ich in einen weiteren Formular scrollen kann. Das Problem ist nun, das bei ein paar hundert von den UserControl-Items die Anwendung nicht mehr will. Irgendwie zuviel Handles oder so ...Was kann man hier tun, was tun die Profis in so einem Fall?
Antworten
-
Hallo,
Handles sind gesharte, begrenzte Ressourcen, deshalb sollte man sie so bald wie möglich nach der Verwendung wieder freigeben. Für deine Anwendung würde das bedeuten, dass Du den Container der UserControls virtualisieren mußt. Nur jene UserControl-Instanzen, die z.Z. auch sichtbar sind, bzw. eine begrenzte Anzahl von vorausgehenden und nachfolgenden Instanzen sollten überhaupt existieren. Alle anderen sollten "on the fly" erzeugt werden, sobald sie durch eine Benutzeraktion angefordert werden. Dadurch kann die Anzahl der Handles konstant gehalten werden.
Eine einfachere Alternative: Vielleicht ist dir auch mit dem DataRepeater-Steuerelement geholfen?
Visual Basic Power Packs 3.0
http://msdn.microsoft.com/de-de/vbasic/bb735936C# continuous forms:
http://social.msdn.microsoft.com/Forums/en-US/winforms/thread/e19ff5a0-b3ec-4fe0-8f0f-b8eeddc44639/Gruß
Marcel- Bearbeitet Marcel RomaModerator Montag, 27. Februar 2012 08:40 Link hinzugefügt
- Als Antwort markiert Robert BreitenhoferModerator Dienstag, 6. März 2012 17:35
Alle Antworten
-
Hallo,
Handles sind gesharte, begrenzte Ressourcen, deshalb sollte man sie so bald wie möglich nach der Verwendung wieder freigeben. Für deine Anwendung würde das bedeuten, dass Du den Container der UserControls virtualisieren mußt. Nur jene UserControl-Instanzen, die z.Z. auch sichtbar sind, bzw. eine begrenzte Anzahl von vorausgehenden und nachfolgenden Instanzen sollten überhaupt existieren. Alle anderen sollten "on the fly" erzeugt werden, sobald sie durch eine Benutzeraktion angefordert werden. Dadurch kann die Anzahl der Handles konstant gehalten werden.
Eine einfachere Alternative: Vielleicht ist dir auch mit dem DataRepeater-Steuerelement geholfen?
Visual Basic Power Packs 3.0
http://msdn.microsoft.com/de-de/vbasic/bb735936C# continuous forms:
http://social.msdn.microsoft.com/Forums/en-US/winforms/thread/e19ff5a0-b3ec-4fe0-8f0f-b8eeddc44639/Gruß
Marcel- Bearbeitet Marcel RomaModerator Montag, 27. Februar 2012 08:40 Link hinzugefügt
- Als Antwort markiert Robert BreitenhoferModerator Dienstag, 6. März 2012 17:35
-
Eine einfachere Alternative: Vielleicht ist dir auch mit dem DataRepeater-Steuerelement geholfen?
Damit könnte mir geholfen sein.
Es ist ja auch niedlich das die ein weather-Demo gewählt haben, auch wen nich die Sourcen nicht finden kann. (nein, dafür habe ich es nicht gebraucht - es sind verschiedene Experimente
;-)
Thanks