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

Agregar Nodo a un treview

Estas en el tema de Agregar Nodo a un treview en el foro de .NET en Foros del Web. hola amigos del foro tengo una duda,, trato de llenar un treview con datos jalados de una base de datos echa en SQL 2005 y ...
  #1 (permalink)  
Antiguo 25/02/2011, 16:13
Avatar de Noa_  
Fecha de Ingreso: diciembre-2010
Ubicación: El Oceano de Sus Ojos ..☺
Mensajes: 132
Antigüedad: 13 años, 11 meses
Puntos: 0
Agregar Nodo a un treview

hola amigos del foro tengo una duda,,
trato de llenar un treview con datos jalados de una base de datos
echa en SQL 2005 y el sistema lo hago en C# 2008

bueno la cosa esta asi
puedo agregar nodos principales con

mitriview.Node.Add

pero la cosa es que una ves que agregre nodos principales
a esos nodos trato de meterle nodos secundarios

alguien me ayuda porfavor

se lo agradecere muchoooo
__________________
La Tecnologia Se Apodero de Nuestras Vidas, Sin Embargo La Ciencia Se Niega en Aceptar Nuestras Mentes
  #2 (permalink)  
Antiguo 26/02/2011, 08:03
Avatar de Aquaventus  
Fecha de Ingreso: junio-2010
Ubicación: Lima-Peru , En el alba de la naturaleza
Mensajes: 2.105
Antigüedad: 14 años, 4 meses
Puntos: 267
Respuesta: Agregar Nodo a un treview

Hola noa! yo construyo mi arbol solo con una tabla recursiva, podrias mostrarme el metodo con que lo llenas, de manera que pueda ver el codigo faltante. Saludos!
__________________
Internet es tener todo el conocimiento global a tu disposición.
Desarrollo de Software - Ejemplos .Net
  #3 (permalink)  
Antiguo 26/02/2011, 08:29
Avatar de Aquaventus  
Fecha de Ingreso: junio-2010
Ubicación: Lima-Peru , En el alba de la naturaleza
Mensajes: 2.105
Antigüedad: 14 años, 4 meses
Puntos: 267
Respuesta: Agregar Nodo a un treview

haber por ejemplo te guio... yo creo un metodo de llenado solo para un treeview especifico :

Código c#:
Ver original
  1. //MI METODO DE CARGA SOLO PARA 1 TREE
  2. public void Carga(int indicePadre, TreeNode nodePadre)
  3.         {
  4.             //Aqui obtengo todo el listado de lo que va a formar mi treeview
  5.             DataTable dtt = objmn.LISTADOMODULO();
  6.             //Creo una vista para el datatable
  7.             DataView dataViewHijos = new DataView(dtt);
  8.             //Obtengo del listado todos los hijos de aquella fila que en su
  9.             //columna del campo "ID_MODULOPE" tenga como indice de
  10.             //codigo el indicepadre que le pasamos como parametro al metodo
  11.             dataViewHijos.RowFilter = dtt.Columns["ID_MODULOPE"].ColumnName + " = " + indicePadre;
  12.            //Hago un recorriedo de los hijos para filtrados
  13.             foreach (DataRowView dataRowCurrent in dataViewHijos)
  14.             {
  15.                 //creo un nuevo nodo
  16.                 TreeNode nuevoNodo = new TreeNode();
  17.                 //Le paso el texto de la fila que esta en recorrido
  18.                 nuevoNodo.Text = dataRowCurrent["DESCRIPMODULO"].ToString();
  19.                 //si se mando null esto quiere decir que son los primeros nodos
  20.                 //principales
  21.                 if (nodePadre == null)
  22.                 {
  23.                    //agrego el nodo
  24.                     treeView2.Nodes.Add(nuevoNodo);
  25.                 }
  26.                 //sino es null quiere decir que voy a agregar un hijo al nodo principal
  27.                 else
  28.                 {
  29.                    //agrego el hijo
  30.                     nodePadre.Nodes.Add(nuevoNodo);
  31.                 }
  32.                 //Mando a cargar si contiene o no nuevo hijos el nodo actual
  33.                 Carga(Int32.Parse(dataRowCurrent["ID_MODULO"].ToString()), nuevoNodo);
  34.             }
  35.             //Expando el tree al final todos los recorridos
  36.             treeView2.ExpandAll();
  37.         }

Y en el load lo unico que hago es llamarlo, pasandole la cabeza del listado el codigo apartir del cual yo voy a listar :

Código c#:
Ver original
  1. //el codigo 0 y null para comenzar a llenar el nodo principal
  2. Carga(0, null);

Por ejemplo la tabla que liste fue :

Código script:
Ver original
  1. Create table MODULO(
  2. ID_MODULO INT,
  3. DESCRIPMODULO NVARCHAR(100),
  4. ID_MODULOPE INT,
  5. PRIMARY KEY(ID_MODULO))

CON DATOS DE PRUEBA COMO... :

(1,'MARKET',0)
(2,'SNACKS',1)
(3,'BEBIDAS',1)
(4,'snack1','2')
(5,'snack2','2')
(6,'snack3','2')
(7,'snack1.1','4')
(8,'pepsi','3')
(9,'coca cola','3')

que vendriar a listar de esta manera :

*MARKET
|----SNACKS
|---------snack1
|---------snack1.1
|---------snack2
|---------snack3
|----BEBIDAS
|---------pepsi
|---------coca cola

Espero te sea de utilidad Noa. Saludos!
__________________
Internet es tener todo el conocimiento global a tu disposición.
Desarrollo de Software - Ejemplos .Net
  #4 (permalink)  
Antiguo 26/02/2011, 19:52
Avatar de Noa_  
Fecha de Ingreso: diciembre-2010
Ubicación: El Oceano de Sus Ojos ..☺
Mensajes: 132
Antigüedad: 13 años, 11 meses
Puntos: 0
Respuesta: Agregar Nodo a un treview

gracias,, es exacto lo que necesitaba,,
solo no sabia si pasar los parametros sin nombre o con nombre

Gracias

saludoos
__________________
La Tecnologia Se Apodero de Nuestras Vidas, Sin Embargo La Ciencia Se Niega en Aceptar Nuestras Mentes
  #5 (permalink)  
Antiguo 26/02/2011, 19:56
Avatar de Noa_  
Fecha de Ingreso: diciembre-2010
Ubicación: El Oceano de Sus Ojos ..☺
Mensajes: 132
Antigüedad: 13 años, 11 meses
Puntos: 0
Respuesta: Agregar Nodo a un treview

lo que hacia era estoo

entrael treview vacio y en el load cargoo

mitreview.Node.Add("primer_nodo");
mitreview.Node.Add("Segundo_nodo");
mitreview.Node.Add("tercer_nodo");

pero una ves que cargaba los nodos padres, no sabia de donde o como agregaba nodos hijos..

suponiendo que tengo ya en el treview

--Nodo1
--(AQUI NO SE COMO METERLE MAS NODOS) mediante codigoo
--Nodo2
--Nodo3


de igual la info me sirvio de mucha utilidad

GRacias..
__________________
La Tecnologia Se Apodero de Nuestras Vidas, Sin Embargo La Ciencia Se Niega en Aceptar Nuestras Mentes
  #6 (permalink)  
Antiguo 26/02/2011, 19:59
Avatar de Noa_  
Fecha de Ingreso: diciembre-2010
Ubicación: El Oceano de Sus Ojos ..☺
Mensajes: 132
Antigüedad: 13 años, 11 meses
Puntos: 0
Respuesta: Agregar Nodo a un treview

creo ke se puede hacer de esta manera

mitreeview.Node(numero denodo).add("nodo secundario");

espero haberme explicadoo
__________________
La Tecnologia Se Apodero de Nuestras Vidas, Sin Embargo La Ciencia Se Niega en Aceptar Nuestras Mentes

Etiquetas: nodo
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:50.