SiteMapNode : Web.sitemap « Sitemap « ASP.Net






SiteMapNode


<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="CatalogB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
    <title>Untitled Page</title>

</head>
<body>
    <form id="form1" runat="server">
    <div>
       <asp:BulletedList ID="bulPrimary" runat="Server"  
         DataValueField="url" DataTextField="title" CssClass="bulHoriz"
         DataSourceID="primarySiteSource" DisplayMode="HyperLink"  />
         
      <asp:SiteMapDataSource ID="primarySiteSource" runat="server" 
         ShowStartingNode="false" />
         
      <div id="nodes">
        <asp:HyperLink ID="lnkHome" runat="server" Text="Home" />
        <asp:HyperLink ID="lnkPrev" runat="server"  />
        <asp:HyperLink ID="lnkNext" runat="server"  />
        <asp:HyperLink ID="lnkUp" runat="server"  />
      </div>
      
    </div>
    </form>
</body>
</html>
</html>


File: Default.aspx.cs

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class CatalogB : System.Web.UI.Page
{
   protected void Page_Load(object sender, EventArgs e)
   {
      SiteMapNode current = SiteMap.CurrentNode;
      SiteMapNode root = SiteMap.RootNode;
      foreach (SiteMapNode node in root.ChildNodes)
      {
         string s = node.Title;
      }
      SiteMapNode parent = current.ParentNode;
      if (parent != null)
      {
         foreach (SiteMapNode nodeA in parent.ChildNodes)
         {
            string s = nodeA.Title;
         }
      }

      if (SiteMap.CurrentNode != null)
      {
         lnkHome.NavigateUrl = SiteMap.RootNode.Url;
         if (SiteMap.CurrentNode.PreviousSibling != null)
         {
            lnkPrev.NavigateUrl = SiteMap.CurrentNode.PreviousSibling.Url;
            lnkPrev.Text = "Previous (" + SiteMap.CurrentNode.PreviousSibling.Title + ")";
         }
         else
            lnkPrev.Visible = false;

         if (SiteMap.CurrentNode.NextSibling != null)
         {
            lnkNext.NavigateUrl = SiteMap.CurrentNode.NextSibling.Url;
            lnkNext.Text = "Next (" + SiteMap.CurrentNode.NextSibling.Title + ")";
         }
         else
            lnkNext.Visible = false;

         if (SiteMap.CurrentNode.ParentNode != null)
         {

            lnkUp.NavigateUrl = SiteMap.CurrentNode.ParentNode.Url;
            lnkUp.Text = "Up (" + SiteMap.CurrentNode.ParentNode.Title + ")";
         }
         else
            lnkUp.Visible = false;
      }
   }
}
File: Web.sitemap

<?xml version="1.0" encoding="utf-8" ?>
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
   <siteMapNode url="BookHome.aspx" title="Home"  
            description="Return to home page">
      <siteMapNode url="Catalog.aspx" title="Catalog" >
         <siteMapNode url="Categories.aspx" title="Categories" >
            <siteMapNode url="List.aspx?cat=1" title="Graphics" />
            <siteMapNode url="List.aspx?cat=2" title="Internet" />
            <siteMapNode url="List.aspx?cat=3" title="Networking" />
         </siteMapNode>
         <siteMapNode url="Series.aspx" title="Series" >
            <siteMapNode url="List.aspx?series=1" title="Core Series" />
            <siteMapNode url="List.aspx?series=2" title=".NET Series" />
            <siteMapNode url="List.aspx?series=3" title="Signature Series"/>
         </siteMapNode>
      </siteMapNode>
      <siteMapNode url="Search.aspx" title="Search"  />
      <siteMapNode url="Help.aspx" title="Help" >
         <siteMapNode url="About.aspx" title="About Us" />
         <siteMapNode url="Contact.aspx" title="Contact Us" />
      </siteMapNode>
   </siteMapNode>
</siteMap>

 








Related examples in the same category

1.An example of a Web.sitemap file
2.Using the Web.sitemap file with a SiteMapPath server control
3.Changing the PathSeparator value
4.Adding style to the PathSeparator property
5.Using an image as the separator
6.Creating a basic .sitemap file for localization
7.Use different site maps as well as the ability to choose a site map
8.Display Levels
9.TreeView ImageSets
10.Set the dispay levels in a Menu control
11.BulletedList SiteMapDataSource Consumer