SiteMapPath.CreateControlHierarchy Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Prozkoumá strukturu mapy webu poskytovanou SiteMapProvider kolekcí podřízených ovládacích prvků na základě stylů a šablon definovaných pro funkční uzly.
protected:
virtual void CreateControlHierarchy();
protected virtual void CreateControlHierarchy();
abstract member CreateControlHierarchy : unit -> unit
override this.CreateControlHierarchy : unit -> unit
Protected Overridable Sub CreateControlHierarchy ()
Výjimky
Ovládací SiteMapProvider prvek SiteMapPath není k dispozici.
Poznámky
Metoda CreateControlHierarchy vytvoří SiteMapNodeItem ovládací prvky, přidruží je k odpovídajícím SiteMapNode objektům od aktuálního zprostředkovatele mapy webu a přidá uzly do Controls kolekce.
Metoda začíná vyhledáním SiteMap.CurrentNodea pak provede hierarchický strom objektů a vytvoří pro každý z nich hierarchický SiteMapNode stromSiteMapNodeItem, dokud RootNode nedosáhnete. Po každém SiteMapNodeItem vytvoření, ale předtím, než je vázán na odpovídající SiteMapNode, InitializeItem metoda je volána. Metoda InitializeItem použije všechny šablony nebo styly definované pro konkrétní typ uzlu a vytvoří a inicializuje všechny podřízené ovládací prvky, které SiteMapNodeItem obsahuje. InitializeItem Nakonec metoda přidá podřízené ovládací prvky SiteMapNodeItem do Controls kolekce.
Po inicializaci SiteMapNodeItem je OnItemCreated volána metoda. SiteMapNodeItem Pak je vázán na jeho odpovídající SiteMapNodea OnDataBound je volána.
Metoda CreateControlHierarchy je volána z CreateChildControls metody.
Třídy, které rozšiřují SiteMapPath ovládací prvek přepsat metodu CreateControlHierarchy změnit způsob SiteMapNodeItem vytváření nebo přidání ovládacích prvků do SiteMapPath ovládacího prvku. Manipulace s položkami jednotlivých uzlů se provádí v InitializeItem metodě a většina tříd, které rozšiřují SiteMapPath přepsání pouze této metody.