SiteMapDataSource.StartingNodeOffset Свойство

Определение

Возвращает или задает положительное или отрицательное целочисленное смещение от начального узла, определяющее корневую иерархию, которая раскрывается элементом управления источником данных.

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

Значение свойства

Int32

Значение по умолчанию равно 0, что указывает, что корневая иерархия, раскрываемая объектом SiteMapDataSource, совпадает с начальным узлом.

Примеры

В следующем примере кода показано влияние StartingNodeUrl свойств и StartingNodeOffset свойств. Пример состоит из нескольких ASP.NET страниц, главной страницы, раздела главной страницы и файла Web.sitemap. Файл Web.sitemap определяет иерархическую структуру сайта. В этом примере кода определяется ряд страниц, определяемых уникальными URL-адресами, такими как 1.aspx, 2.aspx, A.aspx и B.aspx, следующим образом:

Страница Site.master содержит SiteMapDataSource элементы управления и TreeView элементы управления внутри ContentPlaceHolder элемента управления. Он определяет начальный узел предоставленной иерархии как Default.aspx, используя StartingNodeUrl свойство. Файл Site.master используется только страницей Default.aspx.

Все остальные страницы, такие как 1.aspx, 2.aspx, A.aspx и т. д., используют главную страницу Section.master. Эта эталонная страница очень похожа на Site.master, однако она содержит несколько SiteMapDataSource элементов управления, с которыми можно поэкспериментировать. Элемент TreeView управления, отображающий данные карты сайта, изначально привязан к элементу SiteMapDataSource1StartingNodeOffset управления, который указывает значение 1. Это означает, что отображается родительский узел запрашиваемой страницы. Если вы просматриваете страницу 1.aspx, иерархия, отображаемая TreeView в виде A, 1, 2. Однако при просмотре страницы 4.aspx иерархия — B, 3, 4.

Если изменить DataSourceID значение для TreeView SiteMapDataSource2элемента управления, TreeView элемент управления отображает данные карты сайта по-другому. При использовании SiteMapDataSource2StartFromCurrentNode свойство имеет значение true,что означает, что данные карты сайта отображаются относительно запрашиваемой страницы, а StartingNodeOffset свойство имеет значение -1, указывающее, что по возможности отображается один уровень дочерних узлов. При просмотре страницы A.aspx отображаемая иерархия — это иерархия текущего уровня, включая все одноуровневые элементы, такие как B и C. При просмотре 1.aspx родительские узлы больше не отображаются.

В следующем примере кода показана одна из ASP.NET страниц, которые можно использовать с другими компонентами этого примера кода.

<%@ Page MasterPageFile="~/Section.master" Title="Untitled Page" %>  

<asp:Content ID="Content1" ContentPlaceHolderID=MainBody Runat=Server>  
  <h2>1.aspx</h2>  
</asp:Content>  

Комментарии

StartingNodeOffset Если свойство имеет значение, отличное от 0, оно влияет на начальный узел и с ним иерархию данных карты сайта, доступную элементом SiteMapDataSource управления. Отрицательное или положительное целочисленное значение StartingNodeOffset определяет количество уровней вверх или вниз по иерархии карты сайта от начального узла, определяемого начальным StartingNodeUrl и свойствамиStartFromCurrentNode, чтобы смещать начальный узел поддерев, предоставляемый системой управления источником данных.

Если идентифицированный начальный узел является узлом, представляющим запрашиваемую в данный момент страницу, StartingNodeOffset он игнорируется.

StartingNodeOffset Если свойству присвоено отрицательное число -n, начальный узел поддерев, предоставляемый системой управления источником данных, является предком узла n иерархических уровней над идентифицированным начальным узлом. Если значение n больше числа уровней предков в иерархическом дереве, начальный узел поддерева является корневым узлом иерархии карты сайта.

StartingNodeOffset Если свойству присвоено положительное число +n, начальный узел поддеревого дерева является дочерним узлом n уровней ниже указанного начального узла. Так как в иерархии может существовать несколько дочерних узлов, SiteMapDataSource попытка разрешить дочерний узел непосредственно на пути между идентифицированным начальным узлом и узлом, представляющим запрашиваемую в данный момент страницу, если это возможно. Если узел, представляющий запрошенную в данный момент страницу, не находится в поддереве идентифицированного начального узла, значение StartingNodeOffset свойства игнорируется. Если узел, представляющий текущую запрошенную страницу, меньше n уровней ниже определенного начального узла, в качестве начального узла используется текущий запрошенный узел страницы.

Значение StartingNodeOffset свойства хранится в состоянии представления.

Применяется к

См. также раздел