Partager via


SPNavigationNode - Constructeur (String, String)

Crée une nouvelle instance de la classe SPNavigationNode qui pointe vers un emplacement dans la collection de sites actuelle.

Espace de noms :  Microsoft.SharePoint.Navigation
Assembly :  Microsoft.SharePoint (dans Microsoft.SharePoint.dll)

Syntaxe

'Déclaration
Public Sub New ( _
    title As String, _
    url As String _
)
'Utilisation
Dim title As String
Dim url As String

Dim instance As New SPNavigationNode(title, url)
public SPNavigationNode(
    string title,
    string url
)

Paramètres

  • title
    Type : System.String

    Nom affiché pour le nœud. La valeur de chaîne peut être une expression de ressource telle que « $Resources: coeur, announceList », où « core » est le nom du fichier de ressources (.resx) et « announceList » est le nom d'une ressource.

  • url
    Type : System.String

    Une URL relative de serveur qui pointe vers le contenu dans la collection de sites.

Remarques

Le nouvel objet de SPNavigationNode n'est pas complètement initialisé jusqu'à ce qu'il a été ajouté à une collection. Pour plus d'informations, consultez la classe SPNavigationNodeCollection .

Exemples

L'application console suivante crée un lien vers un sous-site Web dans le menu de lancement rapide pour le site Web parent.

using System;
using System.Linq;
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("subsite"))
                {
                    // Make sure the Web site is not the root.
                    if (!web.IsRootWeb)
                    {
                        // Get the display text and URL for a link.
                        string title = web.Title;
                        string url = web.ServerRelativeUrl;

                        // Get the Sites heading on the parent's Quick Launch.
                        SPNavigationNode sitesHeading = web.ParentWeb.Navigation.GetNodeById((int)SPQuickLaunchHeading.Sites);
                        
                        SPNavigationNode webNode = null;
                        if (sitesHeading != null)
                        {
                            // Check for an existing link to the current Web site.
                            webNode = sitesHeading
                                .Children
                                .Cast<SPNavigationNode>()
                                .FirstOrDefault(n => n.Url == url);
                        }

                        // No link, so create one.
                        if (webNode == null)
                        {
                            // Create the node.
                            webNode = new SPNavigationNode(title, url);

                            // Add it to the parent web's quick launch.
                            webNode = web.ParentWeb.Navigation.AddToQuickLaunch(webNode, SPQuickLaunchHeading.Sites);
                        }

                        string format = "Quick Launch for {0} has a link to {1} at {2}";
                        Console.WriteLine(format, webNode.Navigation.Web.Title, webNode.Title, webNode.Url);
                    }
                }
            }
            Console.Write("\nPress ENTER to continue....");
            Console.ReadLine();
        }
    }
}
Imports System
Imports Microsoft.SharePoint
Imports Microsoft.SharePoint.Navigation

Module ConsoleApp

    Sub Main()

        Using site As New SPSite("https://localhost")

            Using web As SPWeb = site.OpenWeb("subsite")

                ' Make sure the Web site is not the root.
                If Not web.IsRootWeb Then

                    ' Get the display text and URL for a link.
                    Dim title As String = web.Title
                    Dim url As String = web.ServerRelativeUrl

                    ' Get the Sites heading on the parent's Quick Launch.
                    Dim sitesHeading As SPNavigationNode = web.ParentWeb.Navigation.GetNodeById(CInt(SPQuickLaunchHeading.Sites))

                    Dim webNode As SPNavigationNode = Nothing
                    If sitesHeading IsNot Nothing Then
                        ' Check for an existing link to the current Web site.
                        webNode = sitesHeading.Children.Cast(Of SPNavigationNode)().FirstOrDefault(Function(n) n.Url = url)
                    End If

                    ' No link, so create one.
                    If webNode Is Nothing Then

                        ' Create the node.
                        webNode = New SPNavigationNode(title, url)

                        ' Add it to the parent web's quick launch.
                        webNode = web.ParentWeb.Navigation.AddToQuickLaunch(webNode, SPQuickLaunchHeading.Sites)
                    End If

                    Dim format As String = "Quick Launch for {0} has a link to {1} at {2}"
                    Console.WriteLine(format, webNode.Navigation.Web.Title, webNode.Title, webNode.Url)
                End If

            End Using

        End Using

        Console.Write(vbCrLf & "Press ENTER to continue....")
        Console.Read()
    End Sub

End Module

Voir aussi

Référence

SPNavigationNode classe

SPNavigationNode - Membres

SPNavigationNode - Surcharge

Microsoft.SharePoint.Navigation - Espace de noms