Angepasste Gitter erstellen

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Daten mit TDBGrid anzeigen und bearbeiten


Ein benutzerdefiniertes Gitter besteht aus persistenten Spaltenobjekten. Diese beschreiben das Erscheinungsbild der Spalten und der Daten in diesen Spalten. Mit benutzerdefinierten Gittern können Sie mehrere Gitter zur Darstellung unterschiedlicher Ansichten derselben Datenmenge konfigurieren (unterschiedliche Spaltenreihenfolge, unterschiedliche Felder, unterschiedliche Farben und Schriften usw.). Außerdem können Sie es Benutzern ermöglichen, das Erscheinungsbild des Gitters zur Laufzeit zu ändern, ohne die zugrunde liegenden Felder des Gitters oder die Feldreihenfolge der Datenmenge zu beeinflussen.

Benutzerdefinierte Gitter werden insbesondere für Datenmengen eingesetzt, deren Struktur während des Entwurfs bereits bekannt ist. Da vorausgesetzt wird, dass die beim Entwurf angegebenen Feldnamen auch in der Datenmenge existieren, sind benutzerdefinierte Gitter nicht geeignet, wenn Benutzer zur Laufzeit beliebige Tabellen auswählen können.

Persistente Spalten – Grundlagen

Wenn Sie persistente Spaltenobjekte für ein Gitter erstellen, sind diese nur lose mit den zugrunde liegenden Feldern der Datenmenge eines Gitters verknüpft. Die Standard-Eigenschaftswerte für persistente Spalten werden dynamisch aus einer Standardquelle (beispielsweise einem Gitter oder einem zugeordneten Feld) abgerufen, bis der jeweiligen Spalteneigenschaft explizit ein Wert zugewiesen wird. Bis zu dieser expliziten Zuweisung ändert sich der Wert von Spalteneigenschaften nur beim Wechseln der Standardquelle. Sobald einer Spalteneigenschaft ein Wert zugewiesen wird, ändert sich dieser nicht mehr mit seiner Standardquelle.

Wenn Sie die Eigenschaft DisplayLabel ändern, wird die Änderung sofort im Spaltentitel sichtbar. Wenn Sie die Eigenschaft DisplayLabel ändern, wird die Änderung sofort im Spaltentitel sichtbar. Sobald Sie einer Spalteneigenschaft explizit einen Wert zuweisen, wird dieser beim Wechseln der Standardquelle nicht mehr automatisch geändert. Spätere Änderungen der Eigenschaft DisplayLabel dieses Feldes wirken sich nicht auf den Spaltentitel aus.

Persistente Spalten existieren unabhängig von den Feldkomponenten, denen sie zugeordnet sind. Da persistente Spalten unabhängig von den Feldkomponenten existieren, denen sie zugeordnet sind, müssen sie keinen Feldobjekten zugeordnet werden. Wenn die Eigenschaft FieldName einer persistenten Spalte leer ist oder der Feldname keinem Feld in der aktuellen Datenmenge des Gitters entspricht, enthält die Eigenschaft Field der Spalte den Wert Null. Die Spalte wird in diesem Fall mit leeren Zellen angezeigt. Indem Sie die Standardzeichenmethode der Zelle überschreiben, können Sie selbst festlegen, welche Daten in den leeren Zellen angezeigt werden. Beispielsweise können Sie eine leere Spalte zur Anzeige aggregierter Werte im letzten Datensatz der aggregierten Datensätze verwenden. Sie können eine leere Spalte auch dazu verwenden, eine Bitmap-Grafik oder ein Balkendiagramm anzuzeigen, um einen Aspekt der Daten zu veranschaulichen.

Einem Feld in einer Datenmenge können mehrere persistente Spalten zugeordnet werden. Sie können beispielsweise auf der linken und auf der rechten Seite eines sehr breiten Gitters dieselbe Teilenummer anzeigen, um die Suche nach bestimmten Teilen zu erleichtern.

Hinweis: Da persistente Spalten keinem Feld in einer Datenmenge zugeordnet werden müssen und mehrere Spalten dasselbe Feld referenzieren können, kann die Eigenschaft FieldCount eines benutzerdefinierten Gitters kleiner oder gleich der Spaltenanzahl im Gitter sein. Beachten Sie außerdem, dass die Eigenschaft SelectedField Null und die Eigenschaft SelectedIndex eines benutzerdefinierten Gitters -1 enthält, wenn die aktuell im Gitter ausgewählte Spalte keinem Feld zugeordnet ist.

Persistente Spalten können zur Anzeige der Zellen einer Spalte in einem Kombinationsfeld mit Lookup-Werten aus einer anderen Datenmenge oder einer statischen Auswahlliste bzw. als Ellipsen-Schaltfläche (...) in einer Zelle konfiguriert werden, die nach dem Anklicken spezielle Viewer oder Dialogfelder für die aktuelle Zelle aufruft.

Die folgenden Themen enthalten weitere Informationen zu persistenten Spalten:

Siehe auch