Winform Repeater oder ähnlich

03/03/2008 - 17:06 von Frank Bergmann | Report spam
Hallo,
gibt es für Winforms auch so etwas wie ein Repeater bei ASP.Net oder
wie kann man soetwas machen?




Gruß
Frank Bergamm
 

Lesen sie die antworten

#1 Peter Fleischer
04/03/2008 - 10:17 | Warnen spam
"Frank Bergmann" schrieb im
Newsbeitrag news:
Hallo,
gibt es für Winforms auch so etwas wie ein Repeater bei ASP.Net oder
wie kann man soetwas machen?



Hi Frank,
standardmàßig gibt es so etwas nicht. Der Repeater in VB6 erzeugt außer in
der aktiven Zelle nur Abbilder. In der aktiven Zelle wird das eigentliche
Steuerelement aufgeblendet. Ähnlich arbeiten auch die Spaltentypen in den
.NET-Grids. Vermutlich war es den Entwicklern zu aufwàndig, so etwas auch in
.NET zu implementieren. Ein komplexes Steuerelement, welches mehrere Objekte
aus dem Datenobjekt zur Darstellung benötigt, macht das Ganze noch
komplizierter.

Man kann so etwas aber problemlos selbst bauen. Solange nur ein Objekt aus
dem Datenobjekt gebunden wird, ist es recht einfach, das DataGrid bzw.
DataGridView zu nutzen und den Zellinhalt selbst zu "malen". Das ist nicht
komplizierter als ein DataReapeater in VB6. Wenn es umfangreicher sein soll,
dann kann man auch ein eigenes Steuerelement erstellen und dieses für jedes
Datenobjekt instanzieren und in einem FlowLayoutPanel, einem
TableLayoutPanel mit Scrollbars oder einem DataGridView darstellen. Bei
vielen Datenobjekten kann das aber einen enormen Ressourcenverbrauch
bedeuten. Um das zu reduzieren, kann man die in VB6 genutzte Technologie
nutzen und nur für den aktuellen Datensatz ein User Control aufblenden und
für alle anderen ein Bild vom User Control "malen" lassen, dieses in einer
Liste verwalten und einer PictureBox im Panel oder Grid darstellen.
Änderungen in der DataSource müssen dann auch das Neuzeichnen aller Bilder
veranlassen.

Ich habe bisher den DataRepeater in VB.NET nicht vermisst, da die Grid's
sehr universell einsetzbar sind und man durch passende Zelllgestaltung viel
einfacher das gleiche oder ein ausreichend àhnliches Aussehen erreichen
kann.

Viele Gruesse

Peter

Ähnliche fragen