Register  Login
 Search  
Software » SiteMap Navigation CMS Friday, September 22, 2017
.ASPX Runtime (ASPXRUN.EXE)

Gigaframe.com is restructuring
 SiteMap Menu

This component aids ASP.NET developers to develop navigation menus based on the standard XML reference file containing the site structure. ASP.NET 2.0 has it's own SiteMap menu component, but it's not currently as flexible or as simple to customize. BluePlanet's component gives the developer more control, plus it works in ASP.NET 1.1.

Features

  • Complete, simple, dynamic and powerful site navigation.
  • SiteMap file driven dynamic menus and navigation bread crumbs (navbars).
  • Existing Database linked (custom mapping) dynamic menus and navigation bread crumbs.
  • Easily retrieve page attributes from sitemap (title, description, etc.)
  • Very customizable through the CSS file.
  • Web Based SiteMap Editor, Simple Content Management System - Full Source Code Included
    Build your own full featured Content Management System from this source code!!
  • Excellent for creating online documentation.
  • Search engine friendly.
  • Simple Integration.

Run Demo

  1. Run BluePlanet Applications Server
  2. Goto http://localhost:16415/ for example
  3. Goto C:\BluePlanetApps\BluePlanetSiteMapMenu\wwwroot to view source code

Generated SiteMap Menus

Web.SiteMap File
<siteMap>
 
<siteMapNode title="Home" description="Home Page" url="/default.aspx">
   
<siteMapNode title="Actions" description="About Us" url="#">
     
<siteMapNode title="URL With Target" description="" url="http://www.cnn.com" target="_blank" onclick="" />
     
<siteMapNode title="OnClick Test" description="" url="#" onclick="javascript:alert('onclick works!!');" />
   
</siteMapNode>
   
<siteMapNode title="Example 1" description="Information On Example 1" url="/example1.aspx">
     
<siteMapNode title="Sub Example 1" description="Information Sub Example 1" url="/example1/subexample1.aspx" />
     
<siteMapNode title="Sub Example 2" description="Information Sub Example 2" url="/example1/subexample2.aspx" />
     
<siteMapNode title="Sub Example 3" description="Information Sub Example 3" url="/example1/subexample3.aspx" />
   
</siteMapNode>
   
<siteMapNode title="Example 2" description="Information On Example 2" url="/example2.aspx" visible="false">
     
<siteMapNode title="Sub Example 1" description="Information Sub Example 1" url="/example2/subexample1.aspx" />
     
<siteMapNode title="Sub Example 2" description="Information Sub Example 2" url="/example2/subexample2.aspx" />
     
<siteMapNode title="Sub Example 3" description="Information Sub Example 3" url="/example2/subexample3.aspx" />
   
</siteMapNode>
   
<siteMapNode title="Example 3" description="Information On Example 3" url="/example2.aspx">
     
<siteMapNode title="Sub Example 1" description="Information Sub Example 1" url="/example3/subexample1.aspx" />
     
<siteMapNode title="Sub Example 2" description="Information Sub Example 2" url="/example3/subexample2.aspx" />
     
<siteMapNode title="Sub Example 3" description="Information Sub Example 3" url="/example3/subexample3.aspx" />
     
<siteMapNode title="MORE Subs Example" description="Information On Example 1" url="/example3/MoreSubsExample.aspx">
       
<siteMapNode title="Sub Example 1" description="Information Sub Example 1" url="/example3/more/subexample1.aspx" />
       
<siteMapNode title="Sub Example 2" description="Information Sub Example 2" url="/example3/more/subexample2.aspx" />
       
<siteMapNode title="Sub Example 3" description="Information Sub Example 3" url="/example3/more/subexample3.aspx" />
     
</siteMapNode>
   
</siteMapNode>
   
<siteMapNode title="Example 4" description="Information On Example 2" url="/example4.aspx">
     
<siteMapNode title="Sub Example 1" description="Information Sub Example 1" url="/example4/subexample1.aspx" />
     
<siteMapNode title="Sub Example 2" description="Information Sub Example 2" url="/example4/subexample2.aspx" />
     
<siteMapNode title="Sub Example 3" description="Information Sub Example 3" url="/example4/subexample3.aspx" />
   
</siteMapNode>
 
</siteMapNode>
</siteMap>

This SiteMap components refers to a ASP.NET 2.0 .sitemap file located in a location of your choice. The .sitemap file is an XML file with nodes and sub-nodes structured in the fashion of your menu, much like a list menu (which it also generates).

The components, or more correct, the HTML it is able to generate are:

  • Side-Bar Menu
  • Top-Bar Menu
  • Navigation-Bar Breadcrumbs to track which page you are on and links to the parent pages.

The menu styles can be changed by manipulating the CSS file BluePlanetSiteMapMenu.css located in the css subfolder. The Side-Bar and Top-Bar menus are both CSS generated menus which gives the developer ultimate control over style.

SiteMap Menu Attributes

Required:

  • Node Title
  • Node Description
  • Node URL
  • Node Target

Optional:

  • Node OnClick
  • Node Image
  • Node Visible
  • Node Roles

Database Linked Hierarchical Menu

Many developers don't want to reinvent their existing navigation by using sitemap files, but would like to utilize the dynamic menus with their current navigation structure from their database. Well they also can with this component and it's simple as the code listed below:   

'Database Generated SideMenu
Dim conn As System
.Data.OleDb.OleDbConnection
Dim
da As System
.Data.OleDb.OleDbDataAdapter
Dim
ds As System
.Data.DataSet = New System.Data.DataSet()
Dim
sqlCmd As System
.Data.OleDb.OleDbCommand = New System.Data.OleDb.OleDbCommand()
Dim
selectSQL As String
= ""

'Conn
conn = New System.Data.OleDb.OleDbConnection( Application("gSiteMapDBConnectionString").ToString())

'Check if it exists

selectSQL
+= "SELECT CSTR(CategoryID) AS ID,
IIF(CategoryParentID IS NULL, NULL, CSTR(CategoryParentID)) As PARENTID , CategoryName AS TITLE, CategoryName AS DESCR, 'Details.aspx?id=' + CSTR(CategoryID) AS URL, '_self' AS TARGET, '' AS ONCLICK FROM Categories;"

da
= New System.Data.OleDb.OleDbDataAdapter(selectSQL, conn)
da
.Fill(ds, "MENUDATA")

Dim
bpDBsitmap As BluePlanet
.SiteMap.DatabaseMenu bpDBsitmap = New BluePlanet.SiteMap.DatabaseMenu(ds, BluePlanet.SiteMap.DatabaseMenu.MenuType.SideMenu, "", "ID", "PARENTID", "TITLE", "DESCR", "URL", "TARGET", "ONCLICK")

lblDBMenu
.Text = bpDBsitmap.getHTML()

The only development needed by the developer is to structure the SQL statement to extract the 6 data fields used, fill a dataset with the information, then pass that dataset to the instance of the menu object with the mapped data fields identified:

Required:

  • Node ID
  • Node Parent ID
  • Node Title
  • Node Description
  • Node URL
  • Node Target

Optional:

  • Node OnClick
  • Node Image




    

Copyright 2000 by Gigaframe.com   Terms Of Use   Privacy Statement