SiteMapDataSource.StartingNodeOffset Propriedade
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Obtém ou define um deslocamento inteiro positivo ou negativo a partir do nó inicial que determina a hierarquia raiz exposta pelo controlo de fonte de dados.
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 Propriedade
O padrão é 0, o que indica que a hierarquia raiz exposta pelo SiteMapDataSource é igual à do nó inicial.
Exemplos
O seguinte exemplo de código demonstra o efeito das StartingNodeUrl propriedades e StartingNodeOffset . O exemplo consiste em várias páginas ASP.NET, uma página mestre, uma secção de página mestra e um ficheiro Web.sitemap. O ficheiro Web.sitemap define a estrutura hierárquica do site. Neste exemplo de código, define um número de páginas identificadas por URLs únicos, como 1.aspx, 2.aspx, A.aspx e B.aspx, da seguinte forma:
A página Site.master contém os SiteMapDataSource controlos e a TreeView dentro de um ContentPlaceHolder controlo. Identifica o nó inicial da hierarquia exposta como Default.aspx, usando a StartingNodeUrl propriedade. O ficheiro Site.master é usado apenas pela página Default.aspx.
Todas as outras páginas, como 1.aspx, 2.aspx, A.aspx, e assim sucessivamente, utilizam a página-mestre Section.master. Esta página-mestre é muito semelhante ao Site.master, no entanto contém vários SiteMapDataSource controlos que pode experimentar. O TreeView controlo que apresenta os dados do mapa do local está inicialmente ligado a SiteMapDataSource1, que especifica um StartingNodeOffset de 1. Isto indica que o nó pai da página atualmente solicitada é exibido. Se vires a página 1.aspx, a hierarquia apresentada TreeView é A, 1, 2. No entanto, se vires a página 4.aspx, a hierarquia é B, 3, 4.
Se alterar o DataSourceID para TreeViewSiteMapDataSource2, o TreeView controlo mostra os dados do mapa do local de forma diferente. Quando usa SiteMapDataSource2, a StartFromCurrentNode propriedade é definida para true, o que significa que os dados do mapa do site são exibidos em relação à página atualmente solicitada e a StartingNodeOffset propriedade é definida para -1, indicando que um nível de nós filhos é exibido, quando possível. Quando visualiza a página A.aspx, a hierarquia que é mostrada é a hierarquia do nível atual, incluindo todos os irmãos, como B e C. Quando visualiza 1.aspx, os nós pais deixam de ser exibidos.
O exemplo de código seguinte demonstra uma das páginas ASP.NET que pode usar com os outros componentes deste exemplo de código.
<%@ Page MasterPageFile="~/Section.master" Title="Untitled Page" %>
<asp:Content ID="Content1" ContentPlaceHolderID=MainBody Runat=Server>
<h2>1.aspx</h2>
</asp:Content>
Observações
Se a StartingNodeOffset propriedade for definida para um valor diferente de 0, afeta o nó inicial e, com ele, a hierarquia de dados do mapa do site exposta pelo SiteMapDataSource controlo. O valor inteiro negativo ou positivo de o StartingNodeOffset identifica o número de níveis acima ou abaixo na hierarquia do mapa do site a partir do nó inicial que é identificado pelas propriedades e StartFromCurrentNodeStartingNodeUrl até deslocar o nó inicial da subárvore exposto pelo controlo de fonte de dados.
Se o nó inicial identificado for o que representa a página atualmente solicitada, o StartingNodeOffset é ignorado.
Se a StartingNodeOffset propriedade estiver definida para um número negativo -n, o nó inicial da subárvore exposto pelo controlo de fonte de dados é o nó ancestral n níveis hierárquicos acima do nó inicial identificado. Se o valor n for maior do que o número de níveis ancestrais na árvore hierárquica, o nó inicial da subárvore é o nó raiz da hierarquia do mapa de sites.
Se a StartingNodeOffset propriedade for definida para um número positivo +n, o nó inicial da subárvore exposta é um nó filho n níveis abaixo do nó inicial identificado. Como podem existir mais do que um ramo de nós filhos na hierarquia, as SiteMapDataSource tentativas de resolver um nó filho diretamente no caminho entre o nó inicial identificado e o nó que representa a página atualmente solicitada, se possível. Se o nó que representa a página atualmente solicitada não estiver na subárvore do nó inicial identificado, o valor da StartingNodeOffset propriedade é ignorado. Se o nó que representa a página atualmente solicitada estiver a menos de n níveis abaixo do nó inicial identificado, o nó da página atualmente solicitado é usado como nó inicial.
O valor da StartingNodeOffset propriedade é armazenado no estado de visualização.