Mostrar un nodo de un TreeView

25/10/2005 - 04:22 por Daltonic | Informe spam
Muy buenas.

Tengo un Treeview en el que cada nodo me muestra unos datos en un
formulario editable. (Estoy en Windows Form).
Una vez que edito y salvo los datos, vuelvo a "recargar" el TreeView,
pues el nombre del nodo es uno de los campos que he podido editar en el
formulario.
Mi problema es que el árbol me aparece "contraído", sin expandir. El
nombre del nodo aparece ya actualizado, pero me gustaría que el árbol
estuviera expandido hasta dicho nodo.
He estado probando de varias formas (selectednode, getnodeat...), pero
no doy con la tecla.
Si alguien me puede echar una mano, le estaré agradecido.

Un saludo.

Preguntas similare

Leer las respuestas

#1 José Luis
25/10/2005 - 08:38 | Informe spam
Un Treeview tiene una colección de 'Nodes', si quieres expandir colocate en
el nodo deseado (TreeView.Node[x].Expand()) y ejecuta la función Expand().
También tienes la función ExpandAll() y Collapse() que estan relacionadas
con el mismo tema.


Saludos
"Daltonic" escribió en el mensaje
news:
Mostrar la cita
#2 Daltonic
25/10/2005 - 15:04 | Informe spam
Gracias José Luis, pero el problema que tengo es cómo averiguar en qué
nodo estoy en este momento, y una vez que actualice el TreeView, cómo
volver a ese mismo nodo.


Mostrar la cita
#3 kuki
25/10/2005 - 16:04 | Informe spam
Cuando seleccionas el nodo lo copias a una variable TreeNode
(ultimoNodoSeleccionado) y despues expandes este nodo
(ultimoNodoSeleccionado) , supongo que funcionara




"Daltonic" escribió en el mensaje
news:
Mostrar la cita
en
Mostrar la cita
Expand().
Mostrar la cita
relacionadas
Mostrar la cita
pues
Mostrar la cita
no
Mostrar la cita
#4 Daltonic
25/10/2005 - 17:10 | Informe spam
Sigo sin dar con la tecla...
Lo que hago es crearme una variable global 'nodoActual'.

En el evento "AfterSelect" del TreeView (al que llamo 'tv'):
nodoActual = tv.SelectedNode;

Y una vez actualizado el TreeView:
this.RellenaTreeView();
tv.SelectedNode = nodoActual;
nodoActual.Expand();

Esto no me funciona. Seguiremos investigando...


Mostrar la cita
#5 Daltonic
25/10/2005 - 17:15 | Informe spam
Grave error el mío, el nodoActual ha de ser asignado antes de la
actualización del TreeView. Quedaría:

nodoActual = tv.SelectedNode;
this.RellenaTreeView();
tv.SelectedNode = nodoActual;
nodoActual.Expand();

Pero sigue sin funcionar...



Mostrar la cita
Ads by Google
Search Busqueda sugerida