Einzelnen Beitrag anzeigen

jus

Registriert seit: 22. Jan 2005
343 Beiträge
 
Delphi 2007 Professional
 
#5

AW: auf Komponenteneigenschaften in Grijjy MVVM Starter Kit zugreifen

  Alt 24. Mai 2019, 21:43
Delphi-Quellcode:
  if Assigned(FOnPropertyChangeTracking) then
  begin
    FOnPropertyChangeTracking.Invoke(Self, 'Text');
    FOnPropertyChanged.Invoke(Self, 'ItemIndex'); // <--- hier erweitert
  end;
Das muss wohl
FOnPropertyChangeTracking.Invoke(Self, 'ItemIndex'); // <--- hier erweitert heißen.
ups, ja sollte so heißen

Sieht ansonsten aber nach genau der richtigen Stelle aus. Nur die Control Interposer Klassen können die Notifications Triggern, wenn man diesen Ansatz nimmt um das Feature als Drop-in zu nutzen und nicht extra binding aware Controls bauen möchte. Kurzer Blick in meinen DSharp Code geworfen... jup, ItemIndex und Text sind auch dort die Eigenschaften, über deren Änderung benachrichtig wird im Change.


Soweit ich das sehen kann, ist das Projekt aber auch derzeit nicht über den "netter Prototyp" Status hinausgekommen - mein ich keineswegs negativ.
Richtiges MVVM (und nicht, das was manche MVVM nennen) steht und fällt mit ner guten Databinding Lösung - und die schaut durchaus tauglich aus. Das ist auch zusammen mit dem TreeViewPresenter der Teil, den wir aus DSharp einsetzen.

Ich bin inzwischen der Meinung, dass wenn man zu ambitioniert versucht, MVVM so zu bauen, wie es in anderen Sprachen geht (deklarativ), fällt einem das zu schnell auf die Füße in Delphi, weils entweder wie bei Visual Livebinding einfach nur ein Riesengroßer unwartbarer Klump in den dfm Dateien wird außer man baut ein robustes Tooling drumrum, was massig Arbeit ist, so dass man das zur Designzeit schon auswerten kann - grad wenn man mit CoC arbeitet und Dinge automatisch binden lässt.
ok, vielen Dank für die Rückmeldung Stefan!

lg,
jus
  Mit Zitat antworten Zitat