AlexK
Hallo Wissende!
Ich schlage mich mit dem TreeView von ASP.NET 2.0 rum. Folgendes Scenario hätte ich gerne:
Mein TreeView soll die ChildNodes und ChildChild Nodes bei Bedarf nachladen. Darum erstelle ich beim Initalisieren des TV nur die Root. Beim Klick auf einen (Root)Node lade ich die entsprechenden ChildNodes nach.
Das klappt auch ganz gut. Allerdings wird mein TV u.U. sehr groß und wenn ich auf einen Node klicke, der weiter unten ist und dieser nachgeladen wird, steht der TV danach wieder oben am Anfang und der angeklickte Node ist irgendwo im nicht sichtbaren Bereich. Ich würde aber gerne zu dem angeklickten Node scrollen, damit der Benutzer diesen auch gleich wieder vor Augen hat... (hab ich das verständlich erklärt?
)
Um zu dem angeklickten Node zu scrollen muss ich auf JavaScript zurück greifen. Dazu habe ich folgendes Script geschrieben:
Damit dieses kleine Script funktioniert, brauch ich aber ein eindeutige ID. Da die TreeNodes die Eigenschaft "ID" nicht haben, habe ich mir CustomTreeNodes erstellt:
Jetzt kann ich meinem CustomTreeNode ein ID zuweisen:
Der TV in der ASPX-Seite sieht so aus:
Bei Initialisieren des TV, also beim erstellen der Root, finde ich die jeweiligen (Custom) IDs auch einwandfrei wieder. Nur wenn ich jetzt z.B. Funktion "Node_Expand" ausführen, die mir die ChildNodes nachlädt, verschwindet die ID wieder aus dem HTML-Sourcecode und ich kann natürlich nicht mehr per JavaScript draufzugreifen... Warum verschwindet die? Ich werd noch wahnsinnig!
Grüße, Alex
Ich schlage mich mit dem TreeView von ASP.NET 2.0 rum. Folgendes Scenario hätte ich gerne:
Mein TreeView soll die ChildNodes und ChildChild Nodes bei Bedarf nachladen. Darum erstelle ich beim Initalisieren des TV nur die Root. Beim Klick auf einen (Root)Node lade ich die entsprechenden ChildNodes nach.
Das klappt auch ganz gut. Allerdings wird mein TV u.U. sehr groß und wenn ich auf einen Node klicke, der weiter unten ist und dieser nachgeladen wird, steht der TV danach wieder oben am Anfang und der angeklickte Node ist irgendwo im nicht sichtbaren Bereich. Ich würde aber gerne zu dem angeklickten Node scrollen, damit der Benutzer diesen auch gleich wieder vor Augen hat... (hab ich das verständlich erklärt?
)Um zu dem angeklickten Node zu scrollen muss ich auf JavaScript zurück greifen. Dazu habe ich folgendes Script geschrieben:
|
||||
Damit dieses kleine Script funktioniert, brauch ich aber ein eindeutige ID. Da die TreeNodes die Eigenschaft "ID" nicht haben, habe ich mir CustomTreeNodes erstellt:
C#-Code: |
public class CustomTreeNode : System.Web.UI.WebControls.TreeNode
|
Jetzt kann ich meinem CustomTreeNode ein ID zuweisen:
C#-Code: |
CustomTreeNode tnStandort = new CustomTreeNode();
|
Der TV in der ASPX-Seite sieht so aus:
|
||||
Bei Initialisieren des TV, also beim erstellen der Root, finde ich die jeweiligen (Custom) IDs auch einwandfrei wieder. Nur wenn ich jetzt z.B. Funktion "Node_Expand" ausführen, die mir die ChildNodes nachlädt, verschwindet die ID wieder aus dem HTML-Sourcecode und ich kann natürlich nicht mehr per JavaScript draufzugreifen... Warum verschwindet die? Ich werd noch wahnsinnig!
Grüße, Alex
