SiteMapPath.PathSeparator Property
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Gets or sets the string that delimits SiteMapPath nodes in the rendered navigation path.
public:
virtual property System::String ^ PathSeparator { System::String ^ get(); void set(System::String ^ value); };
public virtual string PathSeparator { get; set; }
member this.PathSeparator : string with get, set
Public Overridable Property PathSeparator As String
Property Value
A string that represents the delimiter for the nodes in a navigation path. The default is " > ", which is a character pointing from left to right, and corresponds to the default PathDirection, which is set to RootToCurrent.
Examples
The following example demonstrates how to set the PathSeparator property of a SiteMapPath to a string other than the default.
<%@ Page language="c#"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
private void Page_Load(object sender, System.EventArgs e)
{
// Create the SiteMapPath control.
SiteMapPath navpath = new SiteMapPath();
// Make the root node look unique.
// The Image that you can use in your Web page is an
// instance of the WebControls.Image class, not the
// Drawing.Image class.
System.Web.UI.WebControls.Image rootNodeImage =
new System.Web.UI.WebControls.Image();
rootNodeImage.ImageUrl = "myimage.jpg";
ImageTemplate rootNodeImageTemplate = new ImageTemplate();
rootNodeImageTemplate.MyImage = rootNodeImage;
navpath.RootNodeTemplate = rootNodeImageTemplate;
// Make the current node look unique.
Style currentNodeStyle = new Style();
navpath.CurrentNodeStyle.ForeColor = System.Drawing.Color.AliceBlue;
navpath.CurrentNodeStyle.BackColor = System.Drawing.Color.Bisque;
// Set the path separator to be something other
// than the default.
navpath.PathSeparator = "::";
PlaceHolder1.Controls.Add(navpath);
}
// A simple Template class to wrap an image.
public class ImageTemplate : ITemplate
{
private System.Web.UI.WebControls.Image myImage;
public System.Web.UI.WebControls.Image MyImage
{
get
{
return myImage;
}
set
{
myImage = value;
}
}
public void InstantiateIn(Control container)
{
container.Controls.Add(MyImage);
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>About Our Company</title>
</head>
<body>
<form id="Form1" method="post" runat="server">
<asp:PlaceHolder id="PlaceHolder1" runat="server"></asp:PlaceHolder>
<h1>About Our Company</h1>
<p>Our company was founded in 1886.</p>
<p>We use only the finest ingredients, organically grown fruits, and
natural spices in our homemade pies. We use no artificial preservatives
or coloring agents. We would not have it any other way!</p>
</form>
</body>
</html>
<%@ Page language="VB"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Private Sub Page_Load(sender As Object, e As EventArgs)
' Create the SiteMapPath control.
Dim navpath As New SiteMapPath()
' Make the root node look unique.
' The Image that you can use in your Web page is an
' instance of the WebControls.Image class, not the
' Drawing.Image class.
Dim rootNodeImage As New System.Web.UI.WebControls.Image()
rootNodeImage.ImageUrl = "myimage.jpg"
Dim rootNodeImageTemplate As New ImageTemplate()
rootNodeImageTemplate.MyImage = rootNodeImage
navpath.RootNodeTemplate = rootNodeImageTemplate
' Make the current node look unique.
Dim currentNodeStyle As New Style()
navpath.CurrentNodeStyle.ForeColor = System.Drawing.Color.AliceBlue
navpath.CurrentNodeStyle.BackColor = System.Drawing.Color.Bisque
' Set the path separator to be something other
' than the default.
navpath.PathSeparator = "::"
PlaceHolder1.Controls.Add(navpath)
End Sub ' Page_Load
' A simple Template class to wrap an image.
Public Class ImageTemplate
Implements ITemplate
Private anImage As System.Web.UI.WebControls.Image
Public Property MyImage As System.Web.UI.WebControls.Image
Get
return anImage
End Get
Set
anImage = value
End Set
End Property ' MyImage
Public Overridable Sub InstantiateIn(ByVal container As Control) Implements ITemplate.InstantiateIn
container.Controls.Add(MyImage)
End Sub ' InstantiateIn
End Class ' ImageTemplate
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>About Our Company</title>
</head>
<body>
<form id="Form1" method="post" runat="server">
<asp:PlaceHolder id="PlaceHolder1" runat="server"></asp:PlaceHolder>
<h1>About Our Company</h1>
<p>Our company was founded in 1886.</p>
<p>We use only the finest ingredients, organically grown fruits, and
natural spices in our homemade pies. We use no artificial preservatives
or coloring agents. We would not have it any other way!</p>
</form>
</body>
</html>
Remarks
If the PathSeparatorStyle is defined, it is applied to the PathSeparator property. However, if a PathSeparatorTemplate property is defined, both the PathSeparator and PathSeparatorStyle properties are ignored.
The value of this property is stored in view state.
The value of this property, when set, can be saved automatically to a resource file by using a designer tool. For more information, see LocalizableAttribute and Globalization and Localization.