Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   DataBinding mit Klassen (https://www.delphipraxis.net/167122-databinding-mit-klassen.html)

Morphie 14. Mär 2012 12:57

DataBinding mit Klassen
 
Seit ein paar Monaten arbeite ich mich gerade in .NET (C#) ein, und muss sagen, dass ich davon sehr angetan bin.
In .NET habe ich meine Klassen (z.B. die Klasse "Person"), dessen Objekte ich in eine (generische) Liste packe. Soweit kann ich das in Delphi ja auch noch nachbauen.

In .NET kann ich diese generische Liste jetzt aber an diverse Controls binden, z.B. an ein Grid oder eine ListView.
Ist sowas in Delphi auch noch möglich? Bisher habe ich immer nur direkt auf den Datenbanken in Delphi gearbeitet (Datensensitive Controls benutzt), davon möchte ich aber weg.

Ich habe mir zwar vor einiger Zeit mal die neuen LiveBindings und Stevies DSharp angesehen, aber dort war so ein konsequentes Binding wie in .NET nicht möglich. Hat sich da mit der Zeit etwas getan?

Mich würde mal interessieren, wie ihr solche Anwendungen prinzipiell aufbaut...? Bindet ihr immer noch alles direkt an die DataSets oder ähnliches?

Stevie 14. Mär 2012 14:15

AW: DataBinding mit Klassen
 
Zitat:

Zitat von Morphie (Beitrag 1156511)
Ich habe mir zwar vor einiger Zeit mal die neuen LiveBindings und Stevies DSharp angesehen, aber dort war so ein konsequentes Binding wie in .NET nicht möglich. Hat sich da mit der Zeit etwas getan?

Ja, hat sich. Über ein WPF ähnliches Konzept mit einem Datatemplate (welches Informationen darüber bereitstellt, welche Daten z.B. in welcher Spalte angezeigt werden) kannst du Listen und hierarchische Strukturen in den unterstützten Controls anzeigen.

Am weitesten entwickelt ist in dieser Hinsicht der TreeViewPresenter, welcher die Anzeige in einem VST steuert.

In der Theorie kannst du das mit den LiveBindings auch machen, diese erfordern allerdings eine Vielzahl von BindingExpressions. In DSharp spielen beim Binding von Listen die data templates eine entscheidende Rolle.

Schau dir dazu am besten das VirtualTreeviewSample an.


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:47 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz