![]() |
XE3 und LiveBindings
Liste der Anhänge anzeigen (Anzahl: 1)
Nach diesem Beitrag
![]() Und schon fasst man mit beiden Händen in die Keramik: DataGeneratorAdapter-FeldEditor-Feld hinzufügen: Feldname eintippen, Felddaten auswählen - :shock: wieso verändert sich denn jetzt der Feldname wieder na gut, legen wir mal für das Beispiel die Felder
Code:
an.
Lastname - ftString
Firstname - ftString Age - ftInteger Der Code sieht nun so aus (nachdem ich alle Bugs und Fehler aus dem Beispielcode von Malcolm entfernt habe):
Delphi-Quellcode:
Sieht auf jeden Fall schon mal gut aus, oder doch nicht?
unit ViewMain;
interface uses System.SysUtils, System.Types, System.UITypes, System.Rtti, System.Classes, System.Variants, FMX.Types, FMX.Controls, FMX.Forms, FMX.Dialogs, Data.Bind.GenData, Data.Bind.EngExt, FMX.Bind.DBEngExt, FMX.Bind.Grid, System.Bindings.Outputs, FMX.Bind.Editors, Data.Bind.Components, Data.Bind.Grid, FMX.Layouts, FMX.Grid, Data.Bind.ObjectScope, Generics.Collections; type TPerson = class private FFirstname: string; FLastname: string; FAge: Integer; public constructor Create(const Firstname, Lastname: string; Age: Integer); published property Firstname: string read FFirstname write FFirstname; property Lastname: string read FLastname write FLastname; property Age: Integer read FAge write FAge; end; TForm1 = class(TForm) AdapterBindSource1: TAdapterBindSource; DataGeneratorAdapter1: TDataGeneratorAdapter; Grid1: TGrid; BindingsList1: TBindingsList; LinkGridToDataSource1: TLinkGridToDataSource; procedure AdapterBindSource1CreateAdapter(Sender: TObject; var ABindSourceAdapter: TBindSourceAdapter); private MyPeople: TList<TPerson>; // TObjectList public end; var Form1: TForm1; implementation {$R *.fmx} { TPerson } constructor TPerson.Create(const Firstname, Lastname: string; Age: Integer); begin FFirstname := Firstname; FLastname := Lastname; FAge := Age; end; procedure TForm1.AdapterBindSource1CreateAdapter(Sender: TObject; var ABindSourceAdapter: TBindSourceAdapter); begin MyPeople := TObjectList<TPerson>.Create; // TObjectList.Create MyPeople.Add(TPerson.Create('Fred', 'Flintstone', 40)); MyPeople.Add(TPerson.Create('Wilma', 'Flintstone', 41)); MyPeople.Add(TPerson.Create('Barney', 'Rubble', 40)); MyPeople.Add(TPerson.Create('Betty', 'Rubble', 39)); // ABindSourceAdapter := TListBindSourceAdapter.Create // (Self, MyPeople, True); ABindSourceAdapter := TListBindSourceAdapter<TPerson>.Create (AdapterBindSource1, MyPeople, True); end; end. Die Reihenfolge der Felder, die ich im ![]() Ändert man in dem Grid einen Eintrag und wechselt mit den Cursortasten in die nächste oder vorherige Zeile, dann wird dieser geänderte Wert in alle Zeilen angezeigt :shock: Wer soll das denn so benutzen? (wahrscheinlich keiner - selbst bei emba wissen die anscheinend nicht, wie man das benutzt) Im Anhang der Source und die Exe (10MB - Release!) |
AW: XE3 und LiveBindings
Ja, wenn ich mal einen Job suche bei dem ich kaum was zu tun habe, bewerbe ich mich bei EMBA in der Qualitätskontrolle.
Ich finde es wirklich sehr inovativ was die Herren da zaubern, aber wieso ist es jedesmal nur zu 80% fertig? |
AW: XE3 und LiveBindings
So, habe mir das Beispiel mal angeschaut. Der Fehler ließ sich auch nachvollziehen, nach einer Änderung in einer Cell wurde die komplette SPalte geändert, nach einem Scroll auf eine andere Zeile wurde das Grid aber korrekt dargestellt.
Das Beispiel habe ich dann in VCL nachgebaut - kein Fehler Dann habe ich das TMS Grid aus dem PlusPacket installiert und das Beispiel geändert, auch dort kein Fehler. Insofern liegt das Problem wohl am TGrid von FMX2 und nicht am LiveBinding. Grüße |
AW: XE3 und LiveBindings
Zitat:
Kannst du das bitte im QC eintragen? Wenn du dir schon die Mühe gemacht hast, diese drei Szenarien zusammenzubauen, wäre es doch Verschwendung, wenn man das einfach so auf sich beruhen ließe. Vielleicht wird dann der Fehler im Update 1 schon behoben. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:19 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz