TreeView-Knoten-Kind Auffüllen problem
Brauche ich, um zu bauen eine riesige treeview aus einer composite-Datenbank-Tabelle mit Grouping
.
Grouping
ist, was wir sehen, in SQL Server Management Studio Express. Nach einer Database
Knoten, einen festen Ordner werden angezeigt (wie, Database Diagrams
, Tables
, Views
, Synonyms
, Programmability
und Security
) und Kinder eingeteilt sind, in diesen Ordner.
Bis zu diesem Punkt habe ich verwendet AfterSelect
Ereignis und handler, dies zu erreichen.
Aber das problem mit AfterSelect
ist, bevor Sie auf den Knoten, der viewer ist nicht in der Lage zu wissen, ob es jedem Kind zur Verfügung. Dies ist, weil, die erweiterbar plus
- Zeichen ist nicht sichtbar.
Möchte ich BeforeExpand
. Aber das problem mit BeforeExpand
ist, es funktioniert, wenn die Kinder bereits besiedelt. In diesem Fall, wenn ich auf Gruppen, dann passiert nichts.
Wie man dieses Problem lösen?
So-codes/- web-link wird geschätzt.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dem, was ich normalerweise tun ist, um eine "dummy-Knoten-Kind," wo immer es Kinder, die geladen werden soll in einer verzögerten Art und Weise. Dadurch wird die Eltern-haben das plus-Zeichen, und dann können Sie code hinzufügen, um die AfterExpand Veranstaltung, wo Sie Folgendes tun:
Ich in der Regel geben die dummy-Knoten ein text wie "Laden von Daten. Bitte warten..." oder so, damit bekommt der user einige Infos über das, was Los ist.
Update
Ich habe ein einfaches Beispiel:
Es ist standard-Verhalten für einen Baum zu zeigen, ein "+" vor jedem Ordner/Gruppe, und das plus verschwindet, wenn darauf geklickt wurde, wenn es gefunden wurde, um keine Kinder haben, das spart die teure "haben Sie Kinder" zu überprüfen.
Alternativ können Sie diese Informationen angeben, wenn Sie eine preiswerte Möglichkeit um zu ermitteln, ob ein Knoten Kinder hat. Diese Frage finden Sie weitere Informationen.