C# TreeView Knoten ohne Refresh hinzufügen

Registriert
Mai 2007
Beiträge
150
Hallo,

Ich habe einen TreeView, dem ich Knoten hinzufügen möchte. Dabei soll der TreeView alphabetisch sortiert bleiben. Daher füge ich die Knoten immer mit Insert(index, name) ein. Wenn man allerdings im Programm gerade den TreeView benutzt, und er dann durch das Insert Refreshed wird, scrollt der wieder ganz nach oben.

Wie kann ich also im "laufenden Betrieb" ohne das der User neu scrollen muss, einen Knoten hinzufügen?

lg Stefan
 
erste idee: merk dir in einer temporären variable den index des ausgewählten treeview elementes, füge deinen knoten hinzu, lass das treeview control refreshen und setzt danach den selected index zurück auf die temp. variable.
 
Bin zwar nicht so im Thema, aber kannst du den gerade hinzugefügten Knoten nicht auswählen lassen?!

Zu spät...
 
für den scrollbalken trifft natürlich das gleiche zu: erst position merken, zu der du wieder zurück willst. nach dem hinzufügen wieder zur position gehen.

ein beispiel dafür findest du hier:

http://www.bauer-martin.com/csharp/c-scrollen-im-treeview-353.html

wenn du nur willst, dass der hinzugefügte knoten ausgewählt wird und das treeview control soweit scrollt, dass du ihn sehen kannst:

knoten auswählen (sollte klar sein), danach "treeView1.SelectedNode.EnsureVisible();"
 
Zurück
Oben