PortalSiteMapProvider.GetChildNodes method (SiteMapNode)
Returns a security-trimmed collection of child nodes from a specified parent node.
Namespace: Microsoft.SharePoint.Publishing.Navigation
Assembly: Microsoft.SharePoint.Publishing (in Microsoft.SharePoint.Publishing.dll)
Syntax
'Declaration
<SharePointPermissionAttribute(SecurityAction.LinkDemand, ObjectModel := True)> _
Public Overrides Function GetChildNodes ( _
node As SiteMapNode _
) As SiteMapNodeCollection
'Usage
Dim instance As PortalSiteMapProvider
Dim node As SiteMapNode
Dim returnValue As SiteMapNodeCollection
returnValue = instance.GetChildNodes(node)
[SharePointPermissionAttribute(SecurityAction.LinkDemand, ObjectModel = true)]
public override SiteMapNodeCollection GetChildNodes(
SiteMapNode node
)
Parameters
node
Type: System.Web.SiteMapNodeThe node whose children are returned.
Return value
Type: System.Web.SiteMapNodeCollection
A security-trimmed SiteMapNodeCollection object of child nodes.
Examples
The following example references the following assemblies:
System.dll
System.Data.dll
System.Xml.dll
System.Web.dll
System.Configuration.dll
Microsoft.SharePoint.dll
Microsoft.SharePoint.Library.dll
Microsoft.SharePoint.Publishing.dll
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Web;
using Microsoft.SharePoint;
using Microsoft.SharePoint.Navigation;
using Microsoft.SharePoint.Publishing;
using Microsoft.SharePoint.Publishing.Navigation;
namespace Microsoft.SDK.SharePointServer.Samples
{
class GetChildNodesSample
{
// Get a list of the navigation headings beneath a specified
// Web cell in current navigation. This method must be called from
// within a current and valid HttpContext object.
public static List<string>GetNavigationHeadingTitles(string serverRelativeWebUrl)
{
List<string> titles = null;
// Get a reference to the current navigation provider:
// the one that doesn't HTML-encode titles.
PortalSiteMapProvider portalProvider = PortalSiteMapProvider.CurrentNavSiteMapProviderNoEncode;
// Look up the node for the given Web site URL.
PortalWebSiteMapNode webNode =
portalProvider.FindSiteMapNode(serverRelativeWebUrl) as PortalWebSiteMapNode;
if (webNode != null)
{
// Retrieve the heading nodes beneath the
// specified Web site.
SiteMapNodeCollection headingNodes =
portalProvider.GetChildNodes(webNode, NodeTypes.Heading, NodeTypes.None);
titles = new List<string>(headingNodes.Count);
foreach (PortalSiteMapNode headingNode in headingNodes)
{
// Add the title to the list.
titles.Add(headingNode.Title);
}
}
// Return the list of titles.
return titles;
}
}
}
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports System.Data
Imports System.Web
Imports Microsoft.SharePoint
Imports Microsoft.SharePoint.Navigation
Imports Microsoft.SharePoint.Publishing
Imports Microsoft.SharePoint.Publishing.Navigation
Namespace Microsoft.SDK.SharePointServer.Samples
Friend Class GetChildNodesSample
' Get a list of the navigation headings beneath a specified
' Web cell in current navigation. This method must be called from
' within a current and valid HttpContext object.
Public Shared Function GetNavigationHeadingTitles(ByVal serverRelativeWebUrl As String) As List(Of String)
Dim titles As List(Of String) = Nothing
' Get a reference to the current navigation provider:
' the one that doesn't HTML-encode titles.
Dim portalProvider As PortalSiteMapProvider = PortalSiteMapProvider.CurrentNavSiteMapProviderNoEncode
' Look up the node for the given Web site URL.
Dim webNode As PortalWebSiteMapNode = TryCast(portalProvider.FindSiteMapNode(serverRelativeWebUrl), PortalWebSiteMapNode)
If webNode IsNot Nothing Then
' Retrieve the heading nodes beneath the
' specified Web site.
Dim headingNodes As SiteMapNodeCollection = portalProvider.GetChildNodes(webNode, NodeTypes.Heading, NodeTypes.None)
titles = New List(Of String)(headingNodes.Count)
For Each headingNode As PortalSiteMapNode In headingNodes
' Add the title to the list.
titles.Add(headingNode.Title)
Next headingNode
End If
' Return the list of titles.
Return titles
End Function
End Class
End Namespace