SiteMapPath.NodeTemplate Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Ottiene o imposta un modello di controllo da utilizzare per tutti i nodi funzionali di un percorso di navigazione nel sito.
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
Valore della proprietà
Un oggetto ITemplate che implementa il metodo InstantiateIn(Control) per il rendering di contenuto personalizzato per ciascun nodo di un percorso di navigazione.
- Attributi
Esempio
Nell'esempio di codice seguente viene illustrato come un NodeTemplateoggetto , quando viene specificato, esegue l'override degli stili definiti per tutti i nodi, inclusi gli stili speciali per il nodo radice e il nodo corrente.
Importante
L'esempio include una casella di testo che accetta l'input dell'utente e rappresenta quindi una potenziale minaccia alla sicurezza. Per impostazione predefinita, le pagine Web ASP.NET verificano che l'input dell'utente non includa script o elementi HTML. Per altre informazioni, vedere Cenni preliminari sugli attacchi tramite script.
<%@ 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>
Commenti
Impostare su un oggetto per usare un ITemplateImage controllo o un altro controllo, ad esempio un Labelelemento dell'interfaccia NodeTemplate utente per tutti i nodi del percorso di spostamento.
Se la proprietà è impostata, il modello esegue l'override NodeTemplate del testo del nodo di spostamento visualizzato e di qualsiasi NodeStyle oggetto applicato. Per i nodi correnti e radice, se è impostato o CurrentNodeTemplateRootNodeTemplate , questi modelli eseguono l'override di NodeTemplate.
È possibile impostare in modo dichiarativo la proprietà su qualsiasi controllo server Web e l'infrastruttura NodeTemplate ASP.NET esegue i passaggi necessari per eseguire il wrapping del controllo server Web come ITemplate oggetto. Tuttavia, i controlli server Web non implementano l'interfaccia ITemplate . Pertanto, quando si lavora con le ITemplate proprietà a livello di codice, è necessario scrivere un ITemplate wrapper per qualsiasi codice modello. RootNodeTemplate La proprietà viene quindi impostata su un'istanza ITemplate del wrapper.