So ein Edit-Wrapper könnte ungefähr so aussehen
Delphi-Quellcode:
TEditView = class(Component)
public
procedure SetViewModel( AViewModel : TViewModelBae; const PropertyName : string; const AAccessor : TFunc<string>; const AMutuaotr : TProc<string> );
propety Edit : TEdit;
end;
Denkbar ist allerdings auch ein Wrapper nach dieser Art
Delphi-Quellcode:
TEditView = class( TComponent )
public
property Edit : TEdit;
property PropertyName : string;
property ViewModel : TViewModelBase;
end;
Jetzt müsstest du allerdings per
RTTI von dem PropertyNamen auf die Property zugreifen, was aber auch machbar ist. Das zusammen mit einem ValueConverter, der dafür sorgt, dass du auch von Boolean zu String und wieder zurück wechseln kannst macht die Sache richtig rund. Das geht dann schon in die Richtung LiveBinding
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ea 0a 4c 14 0d b6 3a a4 c1 c5 b9
dc 90 9d f0 e9 de 13 da 60)