Relación entre ListView y TreeView

29/06/2005 - 18:00 por José Luis | Informe spam
Hola,

Eintentando hace una especie de copia del explorador de windows, en el que
tengo un treeView con el listado del direcctorio y un listView con el listado
del directorio selecionado en el treeView, preo tengo un problema cuando hago
clik y seleciono un directorio en el listView... el treeView permanece
inamovible, es decir, no consigo probocar el evento treeView.AfterSelect() o
realizar el change del treeView
desde el valor selecionado del listView.SelectedItems

¿Que estoy haciendo mal?!!!!!!! ¿Como los relaciono?

Gracias

Preguntas similare

Leer las respuestas

#1 Juan Pedro Gonzalez
29/06/2005 - 22:34 | Informe spam
Hola Jose Luís,

¿Actualmente como lo estas haciendo? Desde mi punto de vista tendrias que
buscar el directorio en el TreeView y seleccionar su indice, poner el
EnsureVisible a True, y si has hecho doble click sobre el directorio en el
listview expandir el arbol.

No se si la explicación te servirá de mucho, o preferiras algo de codigo...

Saludos,

Juan Pedro González

"José Luis" escribió en el mensaje
news:
Hola,

Eintentando hace una especie de copia del explorador de windows, en el que
tengo un treeView con el listado del direcctorio y un listView con el


listado
del directorio selecionado en el treeView, preo tengo un problema cuando


hago
clik y seleciono un directorio en el listView... el treeView permanece
inamovible, es decir, no consigo probocar el evento treeView.AfterSelect()


o
realizar el change del treeView
desde el valor selecionado del listView.SelectedItems

¿Que estoy haciendo mal?!!!!!!! ¿Como los relaciono?

Gracias

Respuesta Responder a este mensaje
#2 José Luis
30/06/2005 - 18:45 | Informe spam
Ante todo, gracias por contestar,

En el treeview tengo montado el directorio del disco, cuando seleciono
cualquiera de ellos se me despliega el contenido de este dentro del nodo; es
decir, cada vez que se produce el evento TreeView.AfterSelect regenera el
contenido del nodo con los datos del directorio,

Private Sub TreeView1_AfterSelect(ByVal sender As Object, ByVal e As
System.Windows.Forms.TreeViewEventArgs) Handles TreeView1.AfterSelect

InfoCarpetas = New System.IO.DirectoryInfo(pahtSelect)
Carpetas = InfoCarpetas.GetDirectories()

listview1.Items.Clear()
For Each Carpeta In Carpetas
e.Node.Nodes.Add(Carpeta.Name)
listview1.Items.Add(Carpeta.Name)
Next
End sub
esta aqui bien!;

Private Sub treeView1_Click(ByVal sender As Object, ByVal e As
System.EventArgs) Handles treeView1.Click
treeView1.SelectedNode = e.FullPath
End Sub
ERROR


o
Private Sub listView_DoubleClick(ByVal sender As Object, ByVal e As
System.EventArgs) Handles listView.DoubleClick
treeView1.SelectedNode = e.FullPath
End Sub
ERROR



a la vez que hace el llenado del TreeView con los directorios y dentro de
estos susrespectivos subdirectiorios; me rellena tambien el contenido del
ListView.items generando en el ListView el mismo contenido del ultimo
directiorio selecionado en el treeView

Ahora lo que quiero conseguir, sin tener que recorrer todo el treeView
buscando el nombre selecionado para conseguir su id, selecoonarlo y que por
tanto produzca el evento TreeView_AfterSelect, y asi, generar el nuevo nodo
con su contenido,

parece como que produce una lentitud impresionante, cuando tienes un
directiorio bastante grande; aparte de la cantidad de codigo a picar

entonces el problema esta en que necesito el valor de 'ByVal e As
System.Windows.Forms.TreeViewEventArgs', para que en cualquier evento daber
rapidamente donde me encuentro, sin tener que hacer busquedas, pero el unico
evento que tiene esta propiedad el el 'TreeView_AfterSelect', ya que ni tan
siquiera el clik o el dobleclik tiene el argumento ya que estos tienen como
referencia al sistema 'ByVal e As System.EventArgs' en vez de
'TreeViewEventArgs',

otra cosa que he intentado el comparar el 'ByVal e As
System.Windows.Forms.TreeViewEventArgs' con el treeView, pero con he
conseguido pasar valores de 'e.node' a 'treeView.SelectedNode' ni a
'TreeNode'
Respuesta Responder a este mensaje
#3 José Luis
30/06/2005 - 18:58 | Informe spam
¿Conoces algún ejempo que lo haga?
no importa que este relacionado con directiorios

tambien te digo que estoy algo pez en .net, y ahora estoy intentando hacer
mis pinitos haber como se da.!!!

Otro tema seria crear una nueva clase heredada del treeView y listView con
los consiguientes eventos relacionados, pero hasta llegar a ello, yo, creo
que he se solucionar este tropiezo... pero no lo consigo

No coneceras algun ejemplo de herencia del treeView, para ver si puedo
encender la bombilla!!!!

"Juan Pedro Gonzalez" wrote:

Hola Jose Luís,

¿Actualmente como lo estas haciendo? Desde mi punto de vista tendrias que
buscar el directorio en el TreeView y seleccionar su indice, poner el
EnsureVisible a True, y si has hecho doble click sobre el directorio en el
listview expandir el arbol.

No se si la explicación te servirá de mucho, o preferiras algo de codigo...

Saludos,

Juan Pedro González

"José Luis" escribió en el mensaje
news:
> Hola,
>
> Eintentando hace una especie de copia del explorador de windows, en el que
> tengo un treeView con el listado del direcctorio y un listView con el
listado
> del directorio selecionado en el treeView, preo tengo un problema cuando
hago
> clik y seleciono un directorio en el listView... el treeView permanece
> inamovible, es decir, no consigo probocar el evento treeView.AfterSelect()
o
> realizar el change del treeView
> desde el valor selecionado del listView.SelectedItems
>
> ¿Que estoy haciendo mal?!!!!!!! ¿Como los relaciono?
>
> Gracias
>



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida