Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi [XE7] LiveBindings, DataSets und ListViews (https://www.delphipraxis.net/182139-%5Bxe7%5D-livebindings-datasets-und-listviews.html)

Sir Rufo 3. Okt 2014 14:29


[XE7] LiveBindings, DataSets und ListViews
 
Liste der Anhänge anzeigen (Anzahl: 5)
Hat hier irgendwer schon mal mit den LiveBindings etwas Vernünftige hinbekommen?

Im Anhang ist ein kleines Beispiel-Projekt mit einer Mini-Datenbank (SQlite im Speicher).
Auf der Master-Seite befinden sich schon mal 4 Einträge.
Anhang 41928
Fügt man über die + Schaltfläche einen neuen Eintrag hinzu, dann erscheint das hier
Anhang 41929
Nach einem Refresh ist die Anzeige wieder ok :roll:

Nun gut, dann werden wir mal den Eintrag "b" bearbeiten (einfach anklicken) und ändern den auf "z" so wie hier
Anhang 41930
Sieht doch gut aus, klicken wir auf "OK" und bekommen
Anhang 41931
:kotz:
Ein Refresh bringt gar nichts ... ein Klick auf den Eintrag "b" (den hatten wir doch auf "z" geändert) zeigt uns den Datensatz zu "c".
Nach "Zurück" und einem "Refresh" wird dieser Eintrag wieder korrekt mit "c" angezeigt ... äh, nur darunter befindet sich noch ein "c" ... ja, das ist eigentlich der Eintrag "d" :roll:

Wenn man darüber noch hinwegsieht, wie kann ich denn da etwas löschen?

Wischen nach links auf so einem Eintrag, dann bekommt man den Index der Liste ... ah ja, der sagt mir was?
Auf jeden Fall erfolgt hier kein Sync und das DataSet ist nicht auf der Zeile wo jetzt gelöscht werden soll - Toll!

Gut den Index könnte man jetzt nehmen und zum entsprechenden Record in dem DataSet springen ... hmmm

Ja, wenn ich aber jetzt mit dem Suchfeld etwas eingegrenzt habe, dann bekomme ich den Index aus der aktuellen Listen-Ansicht und kann mit dem Index-Wert eben nicht mehr den Record aus dem DataSet heraussuchen ...

Und jetzt?

Möglich dass ich hier etwas grundlegend falsch mache ...

Sir Rufo 6. Okt 2014 21:51

AW: [XE7] LiveBindings, DataSets und ListViews
 
*push*

Sir Rufo 8. Okt 2014 12:49

AW: [XE7] LiveBindings, DataSets und ListViews
 
Hmmm, scheint wohl niemand mit den LiveBindings zu arbeiten ... unter diesen Umständen kann ich das auch nachvollziehen.

Ok, dann eben alles per Hand nach alter Väter Sitte

himitsu 8. Okt 2014 13:23

AW: [XE7] LiveBindings, DataSets und ListViews
 
Zitat:

Zitat von Sir Rufo (Beitrag 1274727)
Hat hier irgendwer schon mal mit den LiveBindings etwas Vernünftige hinbekommen?

Ich glaub das benutzt Keiner. :roll:

Zitat:

Zitat von Sir Rufo (Beitrag 1274727)
Fügt man über die + Schaltfläche einen neuen Eintrag hinzu, dann erscheint das hier

Das mit dem "Einen" kenn ich.
http://www.delphipraxis.net/181829-l...bjectlist.html


Mein kleines Hilfsprojekt, wo ich dachte es sei an einem Tag geschrieben (bei VCL hätte das bestimmt gestimmt), brauchte alleine 3 Tage umd die GUI zuammenzubekommen, weil alles Anders ist und nicht mehr so funktioniert, wie man es sich dachte
und jetzt liegt es seit Wochen rum, weil bei den LiveBindings nichts ging und ich keine Zeit/Lust hatte da weiter zu suchen und auch sonst nirgendwo Hilfe zu bekommen ist (noch nichtmal mit dem Kauf aller Bugfixe ... sprich XE7).

lowmax_5 14. Sep 2015 12:16

AW: [XE7] LiveBindings, DataSets und ListViews
 
Gibt es zum Thema 'Live-Bindings' schon was neues und hat jmd. bereits Praxiserfahrungen in >= XE7 sammeln können? Kurze Frage: Einsatzfähig JA/NEIN?

Rollo62 14. Sep 2015 15:23

AW: [XE7] LiveBindings, DataSets und ListViews
 
Hallo Sir Rufo,

ja das habe ich mich auch schon gefragt.

Ein Demo mit LiveBindings + StringGrid und Navigator funktioniert ganz gut auf Anhieb.
Bidirektionale Datenlinks, es kann editiert, gelöscht, geändert, refresht, etc. werden.
Man muss dabei wohl das * mit * verbinden um die Sache bidirektional zu aktivieren.

Aber zusammen mit ListViews, da wo ich es wirklich brauchen würde in mobiler Anwendung, scheint
es nur eine Einbahnstrasse zu sein.
Einmal laden beim Start, dann bekommt der Listview keine Änderungen, geschweige denn Edits mit.

Das ist mehr als Schade, weil man für Mobile ja genau TListView propagiert.
Ich habe Rd10 noch nicht installiert, aber ich hoffe stark darauf (wie immer), das Embarcadero dies etwas
erweitert hat.

Das es aber prinzipiell gehen müsste zeigt mir das StringGrid,
es scheint nur noch nicht bei LV angekommen zu sein ...


Musste auch von Hand arbeiten: Aber weiss heisst denn das ?
- DbLoadToLv - OK das ist noch einfach
- DbInsert - da hört der Spass schon fasst auf, aber Insert/Append kann man noch von Hand machen
- DbRefresh - muss man alles von Hand checken oder nochmal ein DbLoadKomplett machen (---- Speed)
- DbEdit - da muss der passende Eintrag im LV gefunden werden, müsste z.B. die ID als Tag gespeichert werden
- LvEdit - auch sehr unangenehm, wie zuvor

Jedenfalls ist das ziemlich ärgerlich, zumal ich auch keine direkt passende Unterstützung/Komponente für TDatasets finde.

Rollo


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:00 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