ASP.NET - Consulta sobre treeview

 
Vista:

Consulta sobre treeview

Publicado por Juan (1 intervención) el 11/08/2011 15:10:08
Hola: tengo un problemilla y quisiera saber si alguien puede ayudarme a resolverlo.
En una pagina de busqueda, se cargan los datos para realizar un filtrado, una vez que se hace obtengo un conjunto xml que corresponden a un cliente determinado.
El xml contiene información de varias tablas de la base de datos (ventas del cliente, etc) y lo muestro en un treeview, y aqui está el problema, cuando se carga el treeview la pagina tarda mucho (la primera vez) y luego de la primera vez, tarda 4 veces mas en cargar el treeview (probando con el mismo cliente por lo que el conjunto de datos es el mismo). Interpreto que no esta desechando los datos y por lo tanto se carga el navegador y provoca la demora. El treeview es arbCliente.
El proceso que uso para cargar el treeview es el siguiente

Private Sub CargarXmlArbol(ByVal xmlConci As XmlNode, Optional ByVal nod As TreeNode = Nothing)
If nod Is Nothing Then
arbCliente.Nodes.Clear()
Dim nodoRaiz As New TreeNode("Detalles", "0")
arbCliente.Nodes.Add(nodoRaiz)
CargarXmlArbol(xmlConci, nodoRaiz)
nodoRaiz.Expand()

Else

For Each xmlItem As XmlNode In xmlConci.ChildNodes

If xmlItem.NodeType = XmlNodeType.Element Then
Dim arbNode As New TreeNode
arbNode.Text = xmlItem.Name
arbNode.Value = xmlItem.Value
If xmlItem.HasChildNodes AndAlso xmlItem.FirstChild.NodeType = XmlNodeType.Text Then arbNode.Text += " : " + xmlItem.FirstChild.Value.ToString
nod.ChildNodes.Add(arbNode)
If xmlItem.HasChildNodes Then CargarXmlArbol(xmlItem, arbNode)
If arbNode.Depth < 2 Then arbNode.Expand()
End If

Next

End If
End Sub
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder