TemplateInstance Enumerazione
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.
Specifica il numero di volte che è possibile creare un'istanza di un modello.
public enum class TemplateInstance
public enum TemplateInstance
type TemplateInstance =
Public Enum TemplateInstance
- Ereditarietà
Campi
Nome | Valore | Descrizione |
---|---|---|
Multiple | 0 | Modello di cui è possibile creare più istanze. |
Single | 1 | Modello di cui è possibile creare una sola istanza. |
Esempio
Nell'esempio di codice seguente viene illustrato come usare l'enumerazione TemplateInstance e la TemplateInstanceAttribute classe . Un controllo personalizzato LoginView , denominato MyLoginView
, esegue l'override della AnonymousTemplate proprietà e usa la TemplateInstanceAttribute classe per specificare che viene creata una sola istanza della AnonymousTemplate proprietà.
using System;
using System.Data;
using System.ComponentModel;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace Samples.AspNet.CS.Controls
{
public class MyLoginView : LoginView
{
private ITemplate _anonymoustemplate;
[Browsable(false),
DefaultValue(null),
PersistenceMode(PersistenceMode.InnerProperty),
TemplateContainer(typeof(LoginView)),
TemplateInstance(TemplateInstance.Single)
]
public override ITemplate AnonymousTemplate
{
get
{
return _anonymoustemplate;
}
set
{
_anonymoustemplate = value;
}
}
}
}
Imports System.Data
Imports System.ComponentModel
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls
Namespace Samples.AspNet.VB.Controls
Public Class MyLoginView
Inherits LoginView
Private _anonymoustemplate As ITemplate
<Browsable(False), DefaultValue(""), PersistenceMode(PersistenceMode.InnerProperty), TemplateContainer(GetType(LoginView)), TemplateInstance(TemplateInstance.Single)> _
Public Overrides Property AnonymousTemplate() As System.Web.UI.ITemplate
Get
Return _anonymoustemplate
End Get
Set(ByVal value As System.Web.UI.ITemplate)
_anonymoustemplate = value
End Set
End Property
End Class
End Namespace
L'esempio di codice seguente è un file ASPX che usa il MyLoginView
controllo e illustra come accedere a un Label controllo all'interno della AnonymousTemplate proprietà .
<%@ Page Language="C#" %>
<%@ Register TagPrefix="AspNetSamples" Namespace="Samples.AspNet.CS.Controls" Assembly="Samples.AspNet.CS.Controls" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
this.DataBind();
this.LoginViewLabel1.Text = "LoginView Anonymous Template Label Set Dynamically.";
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>TemplateInstance Example</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<AspNetSamples:MyLoginView id="MyLoginView1" runat="server">
<AnonymousTemplate>
<asp:Label ID="LoginViewLabel1" runat="server" Text="Test"/>
</AnonymousTemplate>
</AspNetSamples:MyLoginView>
</div>
</form>
</body>
</html>
<%@ Page Language="VB" %>
<%@ Register TagPrefix="AspNetSamples" Namespace="Samples.AspNet.VB.Controls" Assembly="Samples.AspNet.VB.Controls" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
Me.DataBind()
Me.LoginViewLabel1.Text = "LoginView Anonymous Template Label Set Dynamically."
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>TemplateInstance Example</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<AspNetSamples:MyLoginView id="MyLoginView1" runat="server">
<AnonymousTemplate>
<asp:Label ID="LoginViewLabel1" runat="server" Text="Test"/>
</AnonymousTemplate>
</AspNetSamples:MyLoginView>
</div>
</form>
</body>
</html>
Commenti
L'enumerazione TemplateInstance specifica i valori che indicano il numero di volte in cui è possibile creare un'istanza di un modello. La TemplateInstanceAttribute classe usa i valori dell'enumerazione TemplateInstanceAttribute . In particolare, i Single campi e Multiple specificano rispettivamente singole e più istanze di un modello. Una singola istanza di un modello consente di fare riferimento ai controlli contenuti nel modello.
Esempi di controlli che usano il valore Single nei metadati della proprietà includono la proprietà del controllo, la ZoneTemplate proprietà del EditorZone controllo e la ZoneTemplate proprietà dell'oggetto WebPartZone.CatalogZoneZoneTemplate