SiteMapPath.NodeTemplate Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft eine Steuerelementvorlage ab bzw. legt eine Steuerelementvorlage fest, die für alle funktionalen Knoten eines Sitenavigationspfades verwendet werden soll.
public:
virtual property System::Web::UI::ITemplate ^ NodeTemplate { 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 NodeTemplate { 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.NodeTemplate : System.Web.UI.ITemplate with get, set
Public Overridable Property NodeTemplate As ITemplate
Eigenschaftswert
Ein ITemplate-Objekt, das die InstantiateIn(Control)-Methode implementiert, um benutzerdefinierten Inhalt für jeden Knoten eines Navigationspfades zu rendern.
- Attribute
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie ein - wenn angegeben NodeTemplatewird - Stile überschreibt, die für alle Knoten definiert sind, einschließlich spezieller Stile für den Stammknoten und den aktuellen Knoten.
Wichtig
Dieses Beispiel umfasst ein Textfeld, das Benutzereingaben akzeptiert, die ein potenzielles Sicherheitsrisiko darstellen. Standardmäßig stellen ASP.NET-Webseiten sicher, dass Benutzereingaben keine Skript- oder HTML-Elemente enthalten. Weitere Informationen finden Sie unter Übersicht über Skriptangriffe.
<%@ 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">
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="Form1" runat="server">
<!-- The following example demonstrates some of the orders
of precedence when applying styles and templates to
functional nodes of a SiteMapPath.
A NodeStyle, RootNodeStyle, and CurrentNodeStyle are
all defined. However, so is a NodeTemplate. The template
is applied to all nodes, and the styles ignored. -->
<asp:SiteMapPath ID="SiteMapPath1" runat="server"
RenderCurrentNodeAsLink="true"
NodeStyle-Font-Names="Franklin Gothic Medium"
NodeStyle-Font-Underline="true"
NodeStyle-Font-Bold="true"
RootNodeStyle-Font-Names="Symbol"
RootNodeStyle-Font-Bold="false"
CurrentNodeStyle-Font-Names="Verdana"
CurrentNodeStyle-Font-Size="10pt"
CurrentNodeStyle-Font-Bold="true"
CurrentNodeStyle-ForeColor="red"
CurrentNodeStyle-Font-Underline="false">
<NODETEMPLATE>
<asp:CheckBox id="CheckBox1" runat="server" Checked="true" />
<asp:TextBox id="TextBox1" runat="server" Text="Declarative template" />
</NODETEMPLATE>
</asp:SiteMapPath>
</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">
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="Form1" runat="server">
<!-- The following example demonstrates some of the orders
of precedence when applying styles and templates to
functional nodes of a SiteMapPath.
A NodeStyle, RootNodeStyle, and CurrentNodeStyle are
all defined. However, so is a NodeTemplate. The template
is applied to all nodes, and the styles ignored. -->
<asp:SiteMapPath ID="SiteMapPath1" runat="server"
RenderCurrentNodeAsLink="true"
NodeStyle-Font-Names="Franklin Gothic Medium"
NodeStyle-Font-Underline="true"
NodeStyle-Font-Bold="true"
RootNodeStyle-Font-Names="Symbol"
RootNodeStyle-Font-Bold="false"
CurrentNodeStyle-Font-Names="Verdana"
CurrentNodeStyle-Font-Size="10pt"
CurrentNodeStyle-Font-Bold="true"
CurrentNodeStyle-ForeColor="red"
CurrentNodeStyle-Font-Underline="false">
<NODETEMPLATE>
<asp:CheckBox id="CheckBox1" runat="server" Checked="true" />
<asp:TextBox id="TextBox1" runat="server" Text="Declarative template" />
</NODETEMPLATE>
</asp:SiteMapPath>
</form>
</body>
</html>
Hinweise
Legen Sie auf NodeTemplate ein ITemplate -Objekt fest, um ein Image oder ein anderes Steuerelement, z. B. ein Label, als Benutzeroberflächenelement für alle Navigationspfadknoten zu verwenden.
Wenn die NodeTemplate -Eigenschaft festgelegt ist, überschreibt die Vorlage sowohl den angezeigten Navigationsknotentext als auch alle darauf angewendeten NodeStyle Elemente. Wenn für den aktuellen Knoten und den Stammknoten ein CurrentNodeTemplate oder RootNodeTemplate festgelegt ist, überschreiben diese Vorlagen den NodeTemplate.
Sie können die NodeTemplate Eigenschaft deklarativ auf ein beliebiges Webserversteuerelement festlegen, und die ASP.NET Infrastruktur führt die erforderlichen Schritte aus, um das Webserversteuerelement als ITemplate Objekt zu umschließen. Webserversteuerelemente implementieren die ITemplate Schnittstelle jedoch nicht. Daher müssen Sie beim programmgesteuerten Arbeiten mit den ITemplate Eigenschaften einen ITemplate Wrapper für jeden Vorlagencode schreiben. Anschließend wird die RootNodeTemplate -Eigenschaft auf eine Instanz des ITemplate Wrappers festgelegt.