![]() |
Eigene Komponete mit Feldern für Livebinding anzeigen?
Hallo Zusammen!
Ich habe eine eigene Komponente (FMX) erzeugt.
Delphi-Quellcode:
Der Livebinding Designer hat ja die Felder von TEdit (Text) sofort sichtbar.
type
TMyEdit = class(TEdit) private FC : string; public property CoolesFeld : String read FC write FC; end; Wie bringe ich es Ihm bei, sofort mein Feld auch darzustellen ohne jedes mal mein Feld über den Dialog erst sichtbar zu schalten? Mavarik |
AW: Eigene Komponete mit Feldern für Livebinding anzeigen?
|
AW: Eigene Komponete mit Feldern für Livebinding anzeigen?
Delphi-Quellcode:
Allerdings kann man nur eine Property angeben, du überschreibst also damit die Text Property von TEdit.
Data.Bind.Components.RegisterObservableMember(
TArray<TClass>.Create(TMyEdit), 'CoolesFeld', 'FMX'); |
AW: Eigene Komponete mit Feldern für Livebinding anzeigen?
Ahh genau...
Danke... Das hatte ich schon in einer anderen Komponente verwendet... Was ist nicht so ganz verstehe ist das TAG [ObservableMember('Position')] den ein
Delphi-Quellcode:
Data.Bind.Components.RegisterObservableMember(TArray<TClass>.Create(TMyEdit), 'CooleFeld', 'FMX');
Reicht schon um es im VisialLiveBinder sofort zu zeigen.. und ein TEdit hat ja die Observer Geschichte schon dabei... Oder? Mavarik |
AW: Eigene Komponete mit Feldern für Livebinding anzeigen?
Zitat:
|
AW: Eigene Komponete mit Feldern für Livebinding anzeigen?
Properties
ObservableMemberAttribute über der Klasse sollte dir den Code ersparen, richtig. Aber wie gesagt, ist das so implementiert, dass das dann die DefaultProperty fürs Binding ist, welche afaik vom VLB Designer genutzt wird. Zumindest darüber kannst du ihm nicht mehr als eine Eigenschaft mitgeben. Meine Vermutung ist, dass das nur über explizites ... anklicken geht, mehr als eine Eigenschaft anzuzeigen. |
AW: Eigene Komponete mit Feldern für Livebinding anzeigen?
Zitat:
|
AW: Eigene Komponete mit Feldern für Livebinding anzeigen?
Zitat:
Aber ich vermute eher, dass es im Designer Code steckt, ob er dort eine Eigenschaft anzeigt oder mehrere. Edit: Hab mal in den VLB Designer geschaut. Die Einträge, die man bei ner PBS sieht, sind TGeneratorFieldDef Instanzen der PBS (sieht man auch im OI, wenn man sie anklickt). Die werden etwas anders gehandhabt, als simple Eigenschaften von nem TEdit. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:51 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 by Thomas Breitkreuz