AirJordan - So 08.01.06 00:51
Titel: DevExpress FullExpand Master/Detail mit gruppierten Feldern
Schönen guten Abend,
eine Frage an die QuantumGrid Experten hier im Forum.
Wie schafft man es, ein MasterDetail Grid, in dem das MasterGrid nach einem Feld gruppiert ist und das
Detailgrid nach einem Datumsfeld gruppiert ist, entweder komplett "auszuklappen" (also FullExpand) oder,
was besser wäre, nur die Detaildatensätze des ausgewählten Masterrecord.
Mit folgenden Code klappt die Gruppe des Master aus:
Delphi-Quelltext
1: 2: 3:
| if s then tvProfilTB.DataController.Groups.FullExpand else tvProfilTB.DataController.Groups.FullCollapse; |
Dabei bleiben aber die Detailverbindungen noch geschlossen. Die bekomme ich in einer Schleife durch alle
Masterdatensätze auf. :roll: Und dann müssten noch die Datensätze der Datumsgruppe aufklappen. Das geht
aber nicht. Und das andere gefällt mir eigentlich auch nicht so, da viel zu langsam. Das Ganze sieht dann
wie folgt aus:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32:
| try iProfileRecords := tvProfilTB.DataController.DataSetRecordCount; i := 1; tvProfilTB.DataController.GotoFirst; while i <= iProfileRecords do begin tvProfilTB.Controller.FocusedRecord.Expanded := s;
cxTagebuch.FocusedView := tvTagebuch; if s then tvTagebuch.DataController.Groups.FullExpand else tvTagebuch.DataController.Groups.FullCollapse; cxTagebuch.FocusedView := tvProfilTB;
tvProfilTB.DataController.GotoNext; Inc(i); end; tvProfilTB.DataController.GotoFirst; finally DIAProfile.EnableControls; end; |
Wie gesagt, die Masterdatensätze klappen aus und wieder zusammen, die Detaildatensätze bleiben eingeklappt.
Hat einer eine Idee? Danke für eure Hilfe.
AirJordan - Mo 09.01.06 11:07
Hi,
Ich habe am Wochenende mich durch die Newsgroup durchgebissen und einige nützliche Hinweise und
Tipps erhalten. Wie folgt habe ich das Problem fast! lösen können.
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13:
| try if s then tvProfilTB.DataController.Groups.FullExpand else tvProfilTB.DataController.Groups.FullCollapse;
for i := 0 to tvTagebuch.CloneCount - 1 do if s then tvTagebuch.Clones[i].DataController.Groups.FullExpand else tvTagebuch.Clones[i].DataController.Groups.FullCollapse; finally DIAProfile.EnableControls; end; |
Wenn man sich auf einem Masterdatensatz befindet und den Schalter zum Ausklappen drückt
klappen nur die Gruppenfelder des Master aus. Confused Wenn man jetzt aber einen Master
auswählt, der auch Detaildatensätze hat, dann bleiben die Detailsätze zwar unausgeklappt,
aber nach dem Drücken des "Plus" sind dennoch alle Gruppen der Detaildatansätze ausgeklappt.
Ich hoffe man versteht mich... :roll: Ansonsten die beiden Hardcopys mal anschauen.