SiteMapDataSource.StartingNodeOffset Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene o establece un desplazamiento entero positivo o negativo a partir del nodo de inicio que determina la jerarquía raíz expuesta por el control de origen de datos.
public:
virtual property int StartingNodeOffset { int get(); void set(int value); };
public virtual int StartingNodeOffset { get; set; }
member this.StartingNodeOffset : int with get, set
Public Overridable Property StartingNodeOffset As Integer
Valor de propiedad
El valor predeterminado es 0, que indica que la jerarquía raíz expuesta por el control SiteMapDataSource coincide con el nodo de inicio.
Ejemplos
En el ejemplo de código siguiente se muestra el efecto de las StartingNodeUrl propiedades y StartingNodeOffset . El ejemplo consta de varias páginas ASP.NET, una página maestra, una sección de página maestra y un archivo Web.sitemap. El archivo Web.sitemap define la estructura jerárquica del sitio. En este ejemplo de código, define una serie de páginas identificadas por direcciones URL únicas, como 1.aspx, 2.aspx, A.aspx y B.aspx, como se indica a continuación:
La página Site.master contiene los SiteMapDataSource controles y TreeView dentro de un ContentPlaceHolder control . Identifica el nodo inicial de la jerarquía expuesta como Default.aspx, mediante la StartingNodeUrl propiedad . El archivo Site.master solo lo usa la página Default.aspx.
Todas las demás páginas, como 1.aspx, 2.aspx, A.aspx, etc., use la página maestra Section.master. Esta página maestra es muy similar a Site.master, pero contiene varios SiteMapDataSource controles con los que puede experimentar. El TreeView control que muestra los datos del mapa del sitio se enlaza inicialmente a SiteMapDataSource1
, que especifica un StartingNodeOffset de 1. Esto indica que se muestra el nodo primario de la página solicitada actualmente. Si ve la página 1.aspx, la jerarquía mostrada por TreeView es A, 1, 2. Sin embargo, si ve la página 4.aspx, la jerarquía es B, 3, 4.
Si cambia de DataSourceID para TreeView a SiteMapDataSource2
, el control muestra los datos del mapa del TreeView sitio de forma diferente. Cuando se usa SiteMapDataSource2
, la StartFromCurrentNode propiedad se establece true
en , lo que significa que los datos del mapa del sitio se muestran en relación con la página solicitada actualmente y la StartingNodeOffset propiedad se establece en -1, lo que indica que se muestra un nivel de nodos secundarios, siempre que sea posible. Al ver la página de A.aspx, la jerarquía que se muestra es la jerarquía del nivel actual, incluidos todos los elementos del mismo nivel, como B y C. Al ver 1.aspx, los nodos primarios ya no se muestran.
En el ejemplo de código siguiente se muestra una de las páginas de ASP.NET que puede usar con los demás componentes de este ejemplo de código.
<%@ Page MasterPageFile="~/Section.master" Title="Untitled Page" %>
<asp:Content ID="Content1" ContentPlaceHolderID=MainBody Runat=Server>
<h2>1.aspx</h2>
</asp:Content>
Comentarios
Si la StartingNodeOffset propiedad se establece en un valor distinto de 0, afecta al nodo inicial y a la jerarquía de datos del mapa del sitio que expone el SiteMapDataSource control. El valor entero negativo o positivo de StartingNodeOffset identifica el número de niveles hacia arriba o hacia abajo de la jerarquía del mapa del sitio desde el nodo inicial identificado por las StartFromCurrentNode propiedades y StartingNodeUrl para desplazar el nodo inicial del subárbol expuesto por el control de origen de datos.
Si el nodo inicial identificado es el nodo que representa la página solicitada actualmente, StartingNodeOffset se omite .
Si la StartingNodeOffset propiedad se establece en un número negativo -n, el nodo inicial del subárbol expuesto por el control de origen de datos es el nodo antecesor n niveles jerárquicos por encima del nodo inicial identificado. Si el valor n es mayor que el número de niveles antecesores en el árbol jerárquico, el nodo inicial del subárbol es el nodo raíz de la jerarquía del mapa del sitio.
Si la StartingNodeOffset propiedad se establece en un número positivo +n, el nodo inicial del subárbol que se expone es un nodo secundario n niveles por debajo del nodo inicial identificado. Dado que puede haber más de una rama de nodos secundarios en la jerarquía, intenta SiteMapDataSource resolver un nodo secundario directamente en la ruta de acceso entre el nodo inicial identificado y el nodo que representa la página solicitada actualmente, si es posible. Si el nodo que representa la página solicitada actualmente no está en el subárbol del nodo inicial identificado, se omite el valor de la StartingNodeOffset propiedad . Si el nodo que representa la página solicitada actualmente es menor que n niveles por debajo del nodo inicial identificado, el nodo de página solicitado actualmente se usa como nodo inicial.
El valor de la StartingNodeOffset propiedad se almacena en estado de vista.