SiteMapPath.RootNodeTemplate Egenskap
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Hämtar eller anger en kontrollmall som ska användas för rotnoden i en webbplatsnavigeringssökväg.
public:
virtual property System::Web::UI::ITemplate ^ RootNodeTemplate { System::Web::UI::ITemplate ^ get(); void set(System::Web::UI::ITemplate ^ value); };
[System.ComponentModel.Browsable(false)]
[System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)]
[System.Web.UI.TemplateContainer(typeof(System.Web.UI.WebControls.SiteMapNodeItem))]
public virtual System.Web.UI.ITemplate RootNodeTemplate { get; set; }
[<System.ComponentModel.Browsable(false)>]
[<System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)>]
[<System.Web.UI.TemplateContainer(typeof(System.Web.UI.WebControls.SiteMapNodeItem))>]
member this.RootNodeTemplate : System.Web.UI.ITemplate with get, set
Public Overridable Property RootNodeTemplate As ITemplate
Egenskapsvärde
Ett ITemplate objekt som implementerar InstantiateIn(Control) metoden för att återge anpassat innehåll för rotnoden i en navigeringssökväg.
- Attribut
Exempel
I följande kodexempel visas hur du programmatiskt definierar en klass som implementerar ITemplate gränssnittet för att omsluta en Image kontroll. Sedan anges egenskapen RootNodeTemplate till en instans av klassen.
<%@ 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>
Kommentarer
RootNodeTemplate Ange till ett ITemplate objekt för att använda en Image kontroll eller någon annan kontroll, till exempel en Label som rotnodens användargränssnittselement i stället för en sträng.
Om egenskapen RootNodeTemplate har angetts åsidosätter mallen både den rotnavigeringsnodtext som visas och alla som RootNodeStyle tillämpas på den. Mallen åsidosätter CurrentNodeTemplate även egenskaperna och CurrentNodeStyle om rotsidan är den sida som visas för närvarande.
Du kan deklarativt ange egenskapen RootNodeTemplate till valfri webbserverkontroll, och ASP.NET infrastruktur utför nödvändiga steg för att omsluta webbserverkontrollen som en ITemplate. Webbserverkontroller implementerar ITemplate dock inte gränssnittet. När du arbetar med ITemplate egenskaperna programmatiskt måste du därför skriva en ITemplate omslutning för valfri mallkod. Sedan anges egenskapen RootNodeTemplate till en instans av omslutningen ITemplate .