Wrox Home  
Search P2P Archive for: Go

  Return to Index  

aspx_espanol thread: TreeViews: 1/2 pregunta 1/2 explicacion.


Message #1 by Un habitante de este Universo <albin@a...> on Sat, 03 Mar 2001 13:12:17 +0100
--=====================_23694060==_.ALT

Content-Type: text/plain; charset="iso-8859-1"; format=flowed

Content-Transfer-Encoding: quoted-printable





         Saludos,



         Para quien no sepa c=F3mo funcionan, aqui va una peque=F1a

explicaci=F3n, que acaba en una duda, por si pudiera contestarmela alguien.



Es mi forma de coloborar y no siempre preguntar.



         Mi proposito es mostrar un arbol con la estructura de una unidad

de disco, por cierto, he visto clases sobre Ficheros y sobre Directorios

pero no sobre Unidades, osea que a=FAn no se como mostar=E9 el listado de

 las

existentes (1=AA).



         TreeView tiene un uso muy parecido a nuestro antiguo Visual Basic.



A trav=E9s de su propiedad Nodes podemos acceder a un objeto contenedor de



objetos (una coleccion de objetos) llamado TreeViewNodeCollection el cual

contiene los Nodos del primer nivel.



         TreeView tvBase =3D new TreeView();

         tvBase.Nodes.Add(new TreeViewNode("Root"));



         Add es un m=E9todo que pertenece ya a al objeto

TreeViewNodeCollection, y por tanto, TreeViewNode es el objeto que

representa el nodo que vamos a insertar.



         =BFQue sucede si queremos insertar subnodos? El constructor

TreeViewNode es polimorfico (acepta diferentes combinaciones de argumentos)



y entre sus formas se encuentra la posibilidad de enviarle un Array de

 nodos.



         TreeView tvBase =3D new TreeView();

         TreeNode[] tnSubNodes =3D { new TreeNode("SubNodoA"), new

TreeNode("SubNodeB") };

         TreeNode tnRoot =3D new TreeNode("Root", tnSubNodes);



         Mi pregunta era, y hablo en pasado porque mientras os escrib=EDa he



encontrado la soluci=F3n :-) no obstante enviar=E9 el mail por si puede "

iluminar " a alguien. =BFQue pasa sino conozco desde el principio ni el

tama=F1o ni el contenido del Array? Porque he encontrado el modo de variar

 el

valor de una posici=F3n del Array ( con el m=E9todo SetValue(valor, =EDndice

) )

pero no su tama=F1o una vez creado (2=AA).



         Pues la soluci=F3n ha aparecido al reparar en que cada nodo, a su



vez, contiene una colecci=F3n de sus sub-noditos, como cab=EDa esperar (ser

=E1

que a=FAn no me he despertado) y que tiene la misma funcionalidad que su

 padre.



          TreeNode tnRoot =3D new TreeNode("Root");

          tnRoot.Nodes.Add(new TreeNode("SubNodeA"));

          tvContent.Nodes.Add(tnRoot);



         Aunque me he autocontestado, a=FAn quedan un par de preguntas

escondidas por el texto, si alguien es tan amable... Por mi parte espero

seguir pudiendo colabrorar... :o)



Albin.







  Return to Index