SiteMapPath.CreateControlHierarchy Metodo

Definizione

Esamina la struttura della mappa del sito fornita da SiteMapProvider e compila un insieme di controlli figlio basato sugli stili e sui modelli definiti per i nodi funzionali.

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

Eccezioni

Non è disponibile alcuna proprietà SiteMapProvider per il controllo SiteMapPath.

Commenti

Il CreateControlHierarchy metodo crea SiteMapNodeItem controlli, li associa agli oggetti corrispondenti SiteMapNode dal provider della mappa del sito corrente e aggiunge i nodi alla Controls raccolta.

Il metodo inizia individuando SiteMap.CurrentNodee quindi scorre l'albero gerarchico degli SiteMapNode oggetti, creando un SiteMapNodeItem oggetto per ognuno fino a quando non viene raggiunto .RootNode Dopo aver creato ogni SiteMapNodeItem oggetto, ma prima di essere associato al corrispondente SiteMapNode, viene chiamato il InitializeItem metodo . Il InitializeItem metodo applica tutti i modelli o gli stili definiti per un particolare tipo di nodo e crea e inizializza tutti i controlli figlio contenuti nell'oggetto SiteMapNodeItem . Infine, il InitializeItem metodo aggiunge i controlli figlio dell'oggetto SiteMapNodeItemControls alla raccolta.

Dopo l'inizializzazione SiteMapNodeItem , viene chiamato il OnItemCreated metodo . SiteMapNodeItem Viene quindi associato al corrispondente SiteMapNodee OnDataBound viene chiamato .

Il CreateControlHierarchy metodo viene chiamato dal CreateChildControls metodo .

Le classi che estendono il controllo eseguono l'override SiteMapPath del metodo per modificare la CreateControlHierarchySiteMapNodeItem modalità di creazione o aggiunta dei controlli al SiteMapPath controllo. La manipolazione dei singoli elementi del nodo viene eseguita nel InitializeItem metodo e la maggior parte delle classi che estendono l'override SiteMapPath solo di tale metodo.

Si applica a

Vedi anche