Einzelnen Beitrag anzeigen

HPB

Registriert seit: 2. Jun 2008
365 Beiträge
 
Delphi XE7 Professional
 
#5

AW: Virtualstringtree suchen mit Child-Nodes

  Alt 11. Okt 2013, 16:02
Ich muss gestehen, ich habe übersehen, dass die Dokumente von dem Angebot vererbt ist.
Sorry

Allerdings hat mich der getText auf verwirrt:
Delphi-Quellcode:
var
  pDaten: TOVSTAngebote;
begin
  pDaten := TOVSTAngebote(vstangebote.GetNodeData(Node)^);
  case column of
    0:
      begin
        if pDaten is TOVSTAngebote then
          celltext := TOVSTAngebote(pDaten).FAngebotstitel
            + ' (' + TOVSTAngebote(pDaten).FPKAngebotsNr + ')';
Du castest die Daten auf den Datentyp TOVSTAngebote und prüfst ob die Variable vom Typ TOVSTAngebote Daten vom Typ TOVSTAngebote enthält, um es dann wieder auf TOVSTAngebote zu casten.


Welche Version vom VST nutzt du?

Das ermitteln des Plus Zeichen wird in der Methode DetermineHiddenChildrenFlagAllNodes gemacht.
Die wird u.a. aufgerufen, wenn du deine Suche mit BeginUpdate und EndUpdate einkapselst. Gibt da aber paar Bedingungen.

Delphi-Quellcode:
vst.beginupdate();
try
  vst.iterateSubtree(...);
finally
  vst.endupdate();
end;
Du kannst übrigens auch IsFiltered nutzen.
Ich habe es einmal mit "vstBeginUpdate . . ." versucht. Bringt aber auch keine Lösung.
Ich arbeite mit der Version: 5.2.1
Ich habe mal das Cast und die erneute Prüfung herausgenommen. Auch keine Lösung.
Wo stelle ich "IsFiltered" ein. Ich habe nichts gefunden!
Übrigens ist mir folgendes noch aufgefallen:
Wenn ich alle Nodes expandiere und dann suche, werden sofort alle ChildNodes nicht mehr angezeigt
Warum ist dies so
Gruß HPB
  Mit Zitat antworten Zitat