Sdílet prostřednictvím


SiteMapNodeItemType Výčet

Definice

Výčet SiteMapNodeItemType používá SiteMapPath ovládací prvek k identifikaci typu SiteMapNodeItem uzlu v hierarchii uzlů.

public enum class SiteMapNodeItemType
public enum SiteMapNodeItemType
type SiteMapNodeItemType = 
Public Enum SiteMapNodeItemType
Dědičnost
SiteMapNodeItemType

Pole

Current 2

Aktuálně zobrazená stránka v navigační cestě webu

Parent 1

Nadřazený uzel aktuálně zobrazené stránky v navigační cestě webu. Nadřazený uzel je jakýkoli uzel, který se nachází mezi kořenovým a aktuálním uzlem v navigační hierarchii.

PathSeparator 3

Oddělovač navigační cesty mapy webu Výchozím oddělovačem SiteMapPath ovládacího prvku je znak ">".

Root 0

Horní uzel hierarchie navigace na webu. Může existovat jenom jeden kořenový uzel.

Příklady

Následující příklad ukazuje, jak volat metodu SiteMapPath.OnItemCreated po vytvoření SiteMapNodeItem v rámci SiteMapPath.InitializeItem metody. Tento příklad je součástí většího příkladu SiteMapPath pro třídu.

private void AddDropDownListAfterCurrentNode(SiteMapNodeItem item) {

    SiteMapNodeCollection childNodes = item.SiteMapNode.ChildNodes;

    // Only do this work if there are child nodes.
    if (childNodes != null) {

        // Add another PathSeparator after the CurrentNode.
        SiteMapNodeItem finalSeparator =
            new SiteMapNodeItem(item.ItemIndex,
                                SiteMapNodeItemType.PathSeparator);

        SiteMapNodeItemEventArgs eventArgs =
            new SiteMapNodeItemEventArgs(finalSeparator);

        InitializeItem(finalSeparator);
        // Call OnItemCreated every time a SiteMapNodeItem is
        // created and initialized.
        OnItemCreated(eventArgs);

        // The pathSeparator does not bind to any SiteMapNode, so
        // do not call DataBind on the SiteMapNodeItem.
        item.Controls.Add(finalSeparator);

        // Create a DropDownList and populate it with the children of the
        // CurrentNode. There are no styles or templates that are applied
        // to the DropDownList control. If OnSelectedIndexChanged is raised,
        // the event handler redirects to the page selected.
        // The CurrentNode has child nodes.
        DropDownList ddList = new DropDownList();
        ddList.AutoPostBack = true;

        ddList.SelectedIndexChanged += new EventHandler(this.DropDownNavPathEventHandler);

        // Add a ListItem to the DropDownList for every node in the
        // SiteMapNodes collection.
        foreach (SiteMapNode node in childNodes) {
            ddList.Items.Add(new ListItem(node.Title, node.Url));
        }

        item.Controls.Add(ddList);
    }
}
Private Sub AddDropDownListAfterCurrentNode(item As SiteMapNodeItem)

   Dim childNodes As SiteMapNodeCollection = item.SiteMapNode.ChildNodes

   ' Only do this work if there are child nodes.
   If Not (childNodes Is Nothing) Then

      ' Add another PathSeparator after the CurrentNode.
      Dim finalSeparator As New SiteMapNodeItem(item.ItemIndex, SiteMapNodeItemType.PathSeparator)

      Dim eventArgs As New SiteMapNodeItemEventArgs(finalSeparator)

      InitializeItem(finalSeparator)
      ' Call OnItemCreated every time a SiteMapNodeItem is
      ' created and initialized.
      OnItemCreated(eventArgs)

      ' The pathSeparator does not bind to any SiteMapNode, so
      ' do not call DataBind on the SiteMapNodeItem.
      item.Controls.Add(finalSeparator)

      ' Create a DropDownList and populate it with the children of the
      ' CurrentNode. There are no styles or templates that are applied
      ' to the DropDownList control. If OnSelectedIndexChanged is raised,
      ' the event handler redirects to the page selected.
      ' The CurrentNode has child nodes.
      Dim ddList As New DropDownList()
      ddList.AutoPostBack = True

      AddHandler ddList.SelectedIndexChanged, AddressOf Me.DropDownNavPathEventHandler

      ' Add a ListItem to the DropDownList for every node in the
      ' SiteMapNodes collection.
      Dim node As SiteMapNode
      For Each node In  childNodes
         ddList.Items.Add(New ListItem(node.Title, node.Url))
      Next node

      item.Controls.Add(ddList)
   End If
End Sub

Poznámky

Ovládací SiteMapPath prvek spravuje informace o navigaci na webu jako kolekci SiteMapNodeItem objektů. SiteMapNodeItem objekty představují funkčně různé typy SiteMapNode uzlů. V souladu s tím je spravuje SiteMapPath ovládací prvek. Následující seznam popisuje typy dostupných uzlů:

  • Jeden uzel, který představuje aktuálně zobrazenou stránku.

  • Jeden uzel, který je horním uzlem hierarchie navigace webu.

  • Mezi horním a aktuálním uzlem (nadřazenými uzly) není žádný nebo více uzlů.

  • Nula nebo více uzlů, které představují oddělovače cest navigace webu.

Každý uzel je vázán na data s podkladovým SiteMapNodeobjektem s výjimkou uzlů typu PathSeparator.

Platí pro

Viz také