Haciendo una barra de desplazamiento destinadas a una selección de grabación En TreeView ASP.Net

StackOverflow https://stackoverflow.com/questions/2344919

  •  23-09-2019
  •  | 
  •  

Pregunta

Tengo un control de vista de árbol que se rellena en tiempo de ejecución con una pirámide de nombres de los empleados. Pongo la barra de desplazamiento css en la vista poniendo desbordamiento:. Automático" en la etiqueta donde se encuentra la vista de árbol Los usuarios me están preguntando a tener la barra de desplazamiento ir abajo en el árbol donde se selecciona un elemento de árbol

.

¿Cómo hago una barra de desplazamiento para ir a un lugar donde la vista de árbol ha sido seleccionado?

Nota: treeView1.SelectedNode.EnsureVisible ();

No está disponible en asp.net necesita otra manera.

No hay solución correcta

Otros consejos

Se necesitará algo de JavaScript personalizada y un poco de código subyacente. Comience usando el método de JS encontró aquí para obtener el ID de cliente de un TreeNode:

function GetTreeNodeID(nodeTooltip)
{
    var tree = document.getElementById(TreeView.ClientID); // Change TreeView ClientID.
    var treeLink =  tree.getElementsByTagName('A');    

    for(var element in treeLink)
        if((nodeTooltip == treeLink[element].title) && (treeLink[element].title != ""))                      
            return treeLink[element].id;
}

A continuación, en su código subyacente, se puede registrar un script de inicio para desplazarse a su div a la NodoArbol utilizando el método scrollIntoView() javascript:

Dim script As String = String.Format("var treeNode = GetTreeNodeID('{0}');  treeNode.scrollIntoView();", myTreeNode.Tooltip)
Page.ClientScript.RegisterStartupScript("scrollScript", script)

El JavaScript follwoing debería ayudar:

var selected = document.getElementById(node_id);
if (selected) {
   selected.scrollIntoView(true);
}

Si se selecciona el nodo daría lugar a una devolución de datos, de tratar:

<%@ Page Title="" Language="C#" MaintainScrollPositionOnPostback="true"
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top