Bonjour ,
Je débute avec Livebinding, J'utilise une Tobjectlist<TObject>
dans TPrototypeBindSource.OnCreateAdaptater j'ai
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 TPath = Class Private FPathType, FOS, FDirectory: String; Procedure SetPathType(Const Value: String); Procedure SetOS(Const Value: String); procedure SetDirectory(const Value: String); Public Constructor Create(APathType, AOS, ADirectory: String); Property PathType: String Read FPathType Write SetPathType; Property OS: String Read FOS Write SetOS; Property Directory: String Read FDirectory write SetDirectory; End; TPathList = Class(TObjectList<TPath>) Procedure LoadFromFile(AFileName: String); Procedure SaveToFile(AFileName: String); Constructor Create; Destructor Destroy; Override; End;Ensuite j'ai relié visuellement une TStringGrid, TBindNavigator et 3 TEdit. À l'exécution ça fonctionne tout est relié lorsque j'ai sélectionne une ligne dans la TSringGrid les TEdit Affiche les données correspondantes Je peux les changer et dans le navigateur j'ai plus qu'à valider la modification.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 ABindSourceAdapter := TListBindSourceAdapter<TPath>.Create(self, PathList, False);
Problème si dans le code je change le contenu d'un TEditLe TBindNavigator Ne change pas d'état je ne peux pas valider la modification, Quelle est la bonne méthode ? J'ai trouvé une pseudo parade après l'affectation je fait
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 eModelPathDirectory.Text := FileOpenDialog1.FileName;mais sa valide directement le changement, Je voudrais plutôt Le fonctionnement normal comme quand on change le texte dans le TEdit à la main
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 TLinkObservers.ControlChanged(eModelPathDirectory);
Merci par avance pour votre aide
Partager