Farbschema: Riviera
Sie befinden sich hier: start » de » Dokumentation » Werkzeuge für Microsoft Access » WKL Forms Object Library » Datenansichten » WklTreeView

WklTreeView

Eine datengebundene Struktur für Access-Formulare. Sie zeigt die Datensätze einer Tabelle, einer Abfrage oder einer SQL-Anweisung als Hierarchie. Der Benutzer kann sie auswählen, durchsuchen, bearbeiten und verschieben; Änderungen schreibt die Struktur wie ein gebundenes Access-Steuerelement in die Datenquelle zurück.

Erste Schritte

Häufige Aufgaben

Schaubild

+- Tree1 -------------------------------+
| [1] Suchen: ö_        2 Treffer  < >  |
+---------------------------------------+
| v [F] Europa                    [2]   |
|   v [F] Deutschland                   |
|       [D] Berlin        <-- [3]       |
|       [D] Köln                        |
|   > [F] Österreich                    |
| > [F] Amerika                         |
+---------------------------------------+
BereichBedeutung
1Suchleiste (Strg+F, AllowSearch): Suchtext, Anzahl der Treffer, vorheriger/nächster Treffer, „Nur Treffer“
2Ein Knoten je Datensatz: Text aus TextField, Symbol ([F] Ordner, [D] Dokument) aus ImageField oder DefaultImage, untergeordnete Knoten aus ParentField; v aufgeklappt, > zugeklappt
3Ausgewählter Knoten (SelectedKey); ein Rechtsklick öffnet das Kontextmenü

Wichtige Funktionen

  • Bindung ohne Code: RecordSource, KeyField, ParentField, TextField; optional Felder für Sortierung, Symbol, QuickInfo, Häkchen, Farbe und Fettdruck.
  • Verzögertes Laden großer oder verknüpfter Tabellen: Jede Ebene wird gelesen, sobald sie aufgeklappt wird.
  • Master-Detail wie bei einem Access-Unterformular (LinkChildFields, LinkMasterFields): Master ist der aktuelle Datensatz des Formulars, ein beliebiges DAO- oder ADO-Recordset oder Werte aus dem Code, auch auf UserForms.
  • Zusammengesetzte Schlüssel: KeyField und ParentField mit mehreren Feldern; in VBA sind Schlüssel dann Arrays.
  • Bearbeiten mit Zurückschreiben in einer Transaktion je Vorgang: umbenennen (F2), hinzufügen (Einfg), löschen (Entf), verschieben und kopieren durch Ziehen oder mit Strg+X/C/V, Häkchen.
  • Suchen und Filtern über die gesamte Datenquelle, einschließlich noch nicht geladener Knoten.
  • Pfade und JPath: einen Knoten über einen Textpfad auswählen (Europa\Deutschland\Berlin) oder Knoten mit einem JPath-Ausdruck finden.
  • Zustand: Knoten und Ansichtszustand als JSON oder XML speichern und wiederherstellen (Datei, Zeichenfolge, ADODB.Stream, JDoc) oder nur die Ansicht (Layout).
  • Access-Konventionen: Eigenschaftenblatt mit Wertelisten, ein Designerfenster mit Live-Vorschau, Ereignisse im Formularmodul mit Cancel, KeyCode = 0 und Response, feste Fehlernummern.

Grundkonzepte

Bindung. Jeder Datensatz ist ein Knoten. KeyField identifiziert ihn, ParentField enthält den Schlüssel seines übergeordneten Knotens. Ein Datensatz ohne vorhandenen übergeordneten Knoten (Null, 0 oder ein unbekannter Schlüssel) ist ein Stammknoten. Das Steuerelement liest über DAO in dem Access, in dem es läuft; verknüpfte Tabellen und Abfragen mit Formularbezügen funktionieren daher wie in jedem Formular.

Schlüssel. Jeder Member und jedes Ereignis identifiziert einen Knoten über seinen Schlüssel, als Variant im Datentyp des Schlüsselfelds; bei mehreren Schlüsselfeldern als Array mit einem Wert je Feld.

Aktionen des Benutzers und Code. Ereignisse melden, was der Benutzer tut. Dieselben Vorgänge aus dem Code (MoveNode, DeleteNode, NodeText = …) lösen keine Ereignisse aus – so wie Code in Access auch kein AfterUpdate auslöst –, schreiben aber über dieselbe Transaktion.

AutoSave. Mit AutoSave = True (Standardwert) wird jede Änderung sofort geschrieben; BeforeUpdate kann sie abbrechen und nimmt damit den ganzen Vorgang zurück. Mit AutoSave = False oder wenn die Struktur aus einem Recordset oder einer Datei geladen wurde, ändert sich nur die Anzeige.

Entwurfsansicht. Mit LivePreview = False (Standardwert) zeigt die Entwurfsansicht eine Beispielstruktur und fragt die Datenquelle nie ab; mit True zeigt sie die echten Knoten.

Administration

Fehlerbehebung

Für Entwickler

Verwandte Themen

de/wiki/msaccess/comctl/data-views/treeview/start.txt · Zuletzt geändert: von Wolfgang van der Stille