View Single Post
Old January 3rd, 2007, 03:59 PM
kwilliams kwilliams is offline
Points: 1,561, Level: 16
Points: 1,561, Level: 16 Points: 1,561, Level: 16 Points: 1,561, Level: 16
Activity: 0%
Activity: 0% Activity: 0% Activity: 0%
Join Date: Jul 2005
Location: , , .
Posts: 317
Thanks: 0
Thanked 0 Times in 0 Posts
Default Master Page Control/Web.Sitemap Questions

I'm using the ASP.NET Master Page control for my site with the use of this tutorial:, and I'm running into a few small issues with the use of the Web.sitemap doc. The code below results in about a 10px gap between each button image on the top nav. It also results in a blank button above the "Home" button, and all of the items from Web.sitemap are listed in the left nav. Here's some examples:

This is how the top nav appears:

Home About Us Contact Us

...and this is how I want the top nav to appear:

Home About Us Contact Us

This is how the left nav appears:

 About Us
 Contact Us

...and this is how I want the left nav to appear:

About Us (header for buttons - not a button)
Products (button)
Services (button)

So my questions are:

1) How can I remove the indention between the top horizontal nav buttons?
2) How can I remove the empty button at the top of the left nav?
3) How can I filter Web.sitemap so that only the "About Us" items appear in the left column?



<%@ Master Language="VB" CodeFile="NavMaster.master.vb" Inherits="NavMaster" Debug="True" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "">

<html xmlns="">
<head runat="server">
    <title>Nav MasterPage</title>
    <link rel="stylesheet" type="text/css" media="screen" href="~/docs/css/screen.css" />
    <form id="form1" runat="server">
    <div id="wrapper">

    <div id="tabs">
        <asp:Menu id="Menu2" runat="server"
                <asp:MenuItem NavigateUrl="default.aspx" ImageUrl="~/images/gif/tab1_active.gif" />
                <asp:MenuItem NavigateUrl="aboutus.aspx" ImageUrl="~/images/gif/tab2_active.gif">
                    <asp:MenuItem Text="Products" Value="Products"></asp:MenuItem>
                    <asp:MenuItem Text="Services" Value="Services"></asp:MenuItem>
                <asp:MenuItem NavigateUrl="contactus.aspx" ImageUrl="~/images/gif/tab3_active.gif">
        <div id="screenleft">
                runat="server" />
        <div id="content">

            <h1><asp:label id="lblPageTitle" runat="server" /></h1>
            <br />

                runat="server" />
        <div id="screenfooter">
            This is the footer section
    <asp:SiteMapDataSource ID="SiteMapDataSource1" runat="server" />



Partial Class NavMaster
    Inherits System.Web.UI.MasterPage
    Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
        lblPageTitle.Text = SiteMap.CurrentNode.Description
    End Sub
End Class



<?xml version="1.0" encoding="utf-8" ?>
<siteMap xmlns="">
    <siteMapNode url="~/default.aspx" title="Home" description="Home">
        <siteMapNode id="aboutus" url="aboutus.aspx" title="About Us" description="About Us">
            <siteMapNode url="products.aspx" title="Products" description="Products" />
            <siteMapNode url="services.aspx" title="Services" description="Services" />
        <siteMapNode id="contactus" url="contactus.aspx" title="Contact Us" description="Contact Us" />


<%@ Page Language="VB" MasterPageFile="~/NavMaster.master" AutoEventWireup="false" CodeFile="aboutus.aspx.vb" Inherits="aboutus_aboutus" title="About Us" %>
<asp:Content ID="Content1" ContentPlaceHolderID="LeftColumn" Runat="Server">
    <div id="screenleftnav">
            StaticEnableDefaultPopOutImage="False" />
<asp:Content ID="Content2" ContentPlaceHolderID="ContentColumn" Runat="Server">
    This is the main content section