wenn ich ein StringGrid, das von der Programmlogik her sich einem anderen "Master"-StringGrid untergeordnet verhalten soll, mit seinen "Detaildaten" (würde man bei einer Datenbankanwendung sagen) fülle und auf eine der Spaltenköfpe klicke, wird das Grid nach dieser Spalte abwechselnd absteigend oder aufsteigend sortiert und erfreulicherweise sogar mit einem grünen Auf- oder Abwärtspfeil markiert - soweit das erwartete Verhalten.
Beim Wechsel eines "übergeordneten" StringGrids ("Mastertabelle" sozusagen) wird das Grid jedoch neu mit entsprechenden Zeilen befüllt, auch das funktioniert. Allerdings bleibt dann der durch die letzte Sortieraktion gesetzte Sortierpfeil über dem Grid erhalten (auch wenn die neu hinzugefügten Daten unsortiert sind). Dies ist zwar nur ein "Schönheitsfehler", aber trotzdem sollte es ja eine Möglichkeit geben, den Sortierindikator wieder zu löschen. Leider finde ich die entsprechende Eigenschaft oder Methode nirgends, weder auf der Ebene von StringGrid noch den untergeordneten Columns.
"StringGridDetail.SortOrder" ist zur Laufzeit immer nur entweder "soAscending" oder "soDescending", auch wenn die Daten noch gar nicht sortiert sind; eine "soUnsorted" (oder Sinngemäßes) gibt es offenbar nicht.
Hat jemand einen Tip, wo das Löschen des Sortierindikators zu geschehen hat? (komme leider nicht aus der Delphi-Welt und bin daher auch nicht entsprechend "vorbelastet" mit den für viele Umsteiger "üblichen" Sitten und Gebräuchen

Das Löschen der Detailtabelle versuche ich jedenfalls so:
Code: Alles auswählen
StringGridDetails.Clean([gzNormal, gzFixedRows]);
StringGridDetails.RowCount:=1;
Oder die "best practice" zum Leeren eines StringGrid (bis auf die Titelzeile und Spaltendefinitionen) sieht ganz anders aus?
Vielen Dank schon mal!