Foros del Web » Programación para mayores de 30 ;) » .NET »

Seleccion de nodo en TreeView

Estas en el tema de Seleccion de nodo en TreeView en el foro de .NET en Foros del Web. Hola Estoy utilizando un treeview con varios niveles y quiero que cuando le doy click derecho sobre algun elemento hijo me despliegue un contextMenu, y ...
  #1 (permalink)  
Antiguo 28/12/2005, 11:37
 
Fecha de Ingreso: diciembre-2005
Mensajes: 10
Antigüedad: 18 años, 4 meses
Puntos: 0
Seleccion de nodo en TreeView

Hola

Estoy utilizando un treeview con varios niveles y quiero que cuando le doy click derecho sobre algun elemento hijo me despliegue un contextMenu, y si es un padre otro elemento.

Uso la funcion MouseUp para detectar si el evento es el click derecho y la funcion AfterSelect para recuperar el nodo selecionado por el usuario, el problema es que si el usuario no da un click izquierdo antes que el derecho el valor del nodo seleccionado no cambia, es decir si no selecciona el nodo y luego da click derecho se queda con el ultimo valor seleccionado.

Lo que necesito es una forma de decirle que al dar click derecho sobre un nodo ese sea el nodo seleccionado.

Gracias de antemano.

Candy_2
  #2 (permalink)  
Antiguo 02/01/2006, 16:10
 
Fecha de Ingreso: diciembre-2005
Mensajes: 10
Antigüedad: 18 años, 4 meses
Puntos: 0
Listo por si alguien lo ocupa

Por si a alguien le sirve use GetNodeAt(X, Y) dentro de Mouse_up y lo guarde como global.

:)
  #3 (permalink)  
Antiguo 27/02/2009, 13:14
Avatar de joselowolf  
Fecha de Ingreso: octubre-2008
Mensajes: 22
Antigüedad: 15 años, 6 meses
Puntos: 1
Respuesta: Seleccion de nodo en TreeView

a mi si me funciono tienes que usar el efecto mouse click asi

private void treeView1_MouseClick(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Right)
{
TreeViewHitTestInfo info = treeView1.HitTest(e.X, e.Y);
if (info != null)
{
treeView1.SelectedNode = info.Node;
}
}
}

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
claro que cado nodo hijo debe tener un menucontextual asignado.
Suerte
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:51.