Share via


SPNavigationNode class

Represents a node in a hierarchical navigation structure for a Microsoft SharePoint Foundation Web site.

Inheritance hierarchy

System.Object
  Microsoft.SharePoint.Navigation.SPNavigationNode

Namespace:  Microsoft.SharePoint.Navigation
Assembly:  Microsoft.SharePoint (in Microsoft.SharePoint.dll)

Syntax

public sealed class SPNavigationNode

Remarks

Unlike the SPNavigationNodeCollection class, the SPNavigationNode class requires you to call the Update method to cause property changes to existing nodes to be saved to the database. However moves occur immediately.

Examples

The following console application prints a simple map of the navigation structure for a Web site.

using System;
using Microsoft.SharePoint;
using Microsoft.SharePoint.Navigation;

namespace ConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            using (SPSite site = new SPSite("https://localhost"))
            {
                using (SPWeb web = site.OpenWeb())
                {
                    string format = "|-{0} (Id = {1})";

                    foreach (SPNavigationNode globalNode in web.Navigation.GlobalNodes)
                    {
                        Console.WriteLine(format, globalNode.Title, globalNode.Id);

                        foreach (SPNavigationNode childNode in globalNode.Children)
                        {
                            Console.WriteLine("  " + format, childNode.Title, childNode.Id);
                        }
                        Console.WriteLine("|");
                    }
                }
            }
            Console.Write("\nPress ENTER to continue....");
            Console.ReadLine();
        }
    }
}

Thread safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

See also

Reference

SPNavigationNode members

Microsoft.SharePoint.Navigation namespace

Microsoft.SharePoint.Navigation.SPNavigation

Microsoft.SharePoint.Navigation.SPNavigationNodeCollection