Cette page vous a-t-elle été utile ?
Votre avis sur ce contenu est important. N'hésitez pas à nous faire part de vos commentaires.
Vous avez d'autres commentaires ?
1500 caractères restants
Exporter (0) Imprimer
Développer tout
Développer Réduire

SiteMapNodeItemType, énumération

Remarque : cette énumération est nouvelle dans le .NET Framework version 2.0.

L'énumération SiteMapNodeItemType est utilisée par le contrôle SiteMapPath pour identifier le type d'un nœud SiteMapNodeItem dans une hiérarchie de nœuds.

Espace de noms : System.Web.UI.WebControls
Assembly : System.Web (dans system.web.dll)

public enum SiteMapNodeItemType
public enum SiteMapNodeItemType
public enum SiteMapNodeItemType

 Nom de membreDescription
CurrentPage actuellement affichée dans le chemin de navigation de site. 
ParentNœud parent de la page actuellement affichée dans le chemin de navigation de site. Un nœud parent correspond à tout nœud situé entre le nœud racine et le nœud actuel dans la hiérarchie de navigation. 
PathSeparatorSéparateur de chemin pour la navigation de plan de site. Le séparateur par défaut pour le contrôle SiteMapPath est le caractère « > ». 
RootNœud supérieur dans la hiérarchie de navigation de site. Il ne peut y avoir qu'un seul nœud racine. 

Le contrôle SiteMapPath gère ses informations sur la navigation de site comme une collection d'objets SiteMapNodeItem. Les objets SiteMapNodeItem représentent, d'un point de vue fonctionnel, différents types de nœuds SiteMapNode. En conséquence, ils sont gérés par le contrôle SiteMapPath. La liste suivante décrit les types de nœuds disponibles :

  • Un nœud qui représente la page actuellement affichée.

  • Un nœud qui correspond au nœud supérieur dans la hiérarchie de navigation de site.

  • Zéro ou plusieurs nœuds entre le nœud supérieur et le nœud actuel (nœuds parents).

  • Zéro ou plusieurs nœuds qui représentent des séparateurs de chemin pour la navigation de site.

Chaque nœud est lié aux données d'un nœud SiteMapNodesous-jacent, sauf les nœuds du type PathSeparator.

L'exemple de code suivant montre comment appeler la méthode OnItemCreated après avoir créé un SiteMapNodeItem dans la méthode InitializeItem. Cet exemple de code fait partie d'un plus grand exemple fourni pour la classe SiteMapPath.

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 void AddDropDownListAfterCurrentNode(SiteMapNodeItem item)
{
    SiteMapNodeCollection childNodes = item.get_SiteMapNode().
        get_ChildNodes();
    // Only do this work if there are child nodes.
    if (childNodes != null) {
        // Add another PathSeparator after the CurrentNode.
        SiteMapNodeItem finalSeparator = new SiteMapNodeItem(item.
            get_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.get_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.set_AutoPostBack(true);

        ddList.add_SelectedIndexChanged(new EventHandler(this.
            DropDownNavPathEventHandler));
        // Add a ListItem to the DropDownList for every node in the
        // SiteMapNodes collection.
        for (int iCtr = 0; iCtr < childNodes.get_Count(); iCtr++) {
            SiteMapNode node = (SiteMapNode)childNodes.get_Item(iCtr);
            ddList.get_Items().Add(new ListItem(node.get_Title(), node.
                get_Url()));
        }

        item.get_Controls().Add(ddList);
    }
} //AddDropDownListAfterCurrentNode

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Édition Media Center, Windows XP Professionnel Édition x64, Windows XP SP2, Windows XP Starter Edition

Le .NET Framework ne prend pas en charge toutes les versions de chaque plate-forme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise.

.NET Framework

Prise en charge dans : 2.0

Ajouts de la communauté

AJOUTER
Afficher:
© 2015 Microsoft