Поделиться через


SiteMapPath.CreateControlHierarchy Метод

Определение

Проверяет структуру карты веб-узла, предоставленную SiteMapProvider и создает коллекцию дочерних элементов управления, основываясь на стилях и шаблона, определенных для рабочих узлов.

protected:
 virtual void CreateControlHierarchy();
protected virtual void CreateControlHierarchy ();
abstract member CreateControlHierarchy : unit -> unit
override this.CreateControlHierarchy : unit -> unit
Protected Overridable Sub CreateControlHierarchy ()

Исключения

SiteMapProvider не доступен для элемента управления SiteMapPath.

Комментарии

Метод CreateControlHierarchy создает SiteMapNodeItem элементы управления, связывает их с соответствующими SiteMapNode объектами из текущего поставщика карт сайта и добавляет узлы в коллекцию Controls .

Метод начинается с поиска SiteMap.CurrentNode, а затем проходит вверх по иерархическму дереву SiteMapNodeSiteMapNodeItem объектов, создавая для каждого из них, пока не RootNode будет достигнут . После создания каждого из них SiteMapNodeItem , но перед привязкой к соответствующему SiteMapNodeобъекту InitializeItem вызывается метод . Метод InitializeItem применяет все шаблоны или стили, определенные для определенного типа узла, и создает и инициализирует все дочерние элементы управления, содержащиеся в SiteMapNodeItem . Наконец, InitializeItem метод добавляет дочерние элементы управления объекта в SiteMapNodeItem коллекцию Controls .

После инициализации OnItemCreated каждого SiteMapNodeItem метода вызывается метод . SiteMapNodeItem Затем привязывается к соответствующему SiteMapNodeобъекту и OnDataBound вызывается .

Метод CreateControlHierarchy вызывается из CreateChildControls метода .

Классы, расширяющие SiteMapPath элемент управления, переопределяют CreateControlHierarchy метод , чтобы изменить SiteMapNodeItem способ создания или добавления элементов управления в SiteMapPath элемент управления . Обработка отдельных элементов узла выполняется в методе InitializeItem , и большинство классов, расширяющих возможности SiteMapPath , переопределяют только этот метод.

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

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