Detectar nodo seleccionado en TreeView

10/06/2004 - 09:13 por Jaime | Informe spam
Buenas!

Tengo un problema con un control TreeView al que le estoy
dadndo vueltas, y no consigo ver la solución.

Al control lo alimento en tiempo de ejecución.

Cuando tengo una rama del arbol expandida, y está
seleccionado un nodo que se encuentra en esta rama, al
clicar sobre el signo (-) del nodo padre de la rama, esta
se colapsa, y se convierte en seleccionado el nodo padre
de la rama (el que tiene el signo delante).

El problema es que no consigo detectar el cambio de nodo
seleccionado, ya que ninguno de los eventos:
BeforeCollapse, AfterCollapse, BeforeSelect y AfterSelect
se me activan en este caso.

¿Debo controlar otro evento distinto?
¿Se me ha despistado alguna propiedad?

Gracias.

Preguntas similare

Leer las respuestas

#1 Anonimo
10/06/2004 - 11:16 | Informe spam
Cómo creas los nodos en el TreeView ?


Mostrar la cita
estoy
Mostrar la cita
esta
Mostrar la cita
AfterSelect
Mostrar la cita
#2 Anonimo
10/06/2004 - 11:48 | Informe spam
Una cosa así:

ixnodo=treeView1.Nodes.Add(new tipoGeo
("100","España",0,NodoValido[0]));
treeView1.Nodes[ixnodo].Nodes.Add(new tipoGeo
("10001","Andalucía",1,NodoValido[1]));

Mostrar la cita
#3 Anonimo
10/06/2004 - 11:52 | Informe spam
Se me ha olvidado.
TipoGeo es una clase en la que se activan propiedades del
nodo:

class tipoGeo : TreeNode
{
public string clave;
public int nivel;
public fechaGeo[] fecha;
public tipoGeo(string clave, string nombre, int nivel,
bool valido)
{
this.clave=clave;
this.nivel=nivel;
this.Text=nombre;
this.fecha=null;
if (!valido)
{
this.ImageIndex=this.SelectedImageIndex=0;
this.ForeColor=Color.Gray;
}
else
{
this.ImageIndex=1;
this.SelectedImageIndex=2;
this.ForeColor=Color.Black;
}
}
}
#4 Anonimo
10/06/2004 - 12:18 | Informe spam
Ya está solucionado.

Me faltaba asociar el código de evento que había escrito,
al control, en la pestaña de eventos de la ventana de
propiedades.

Ahora ya me responde al AfterCollapse.

Como el evento AfterSelect se había asociado
automáticamente al clicar en el control en vista diseño,
no me había dado cuenta de la asociación, aunque me había
extrañado que los restantes eventos que había codificado,
no aparecían en InitializeComponent()
Ads by Google
Search Busqueda sugerida