TemplateInstance Výčet
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Určuje, kolikrát lze vytvořit instanci šablony.
public enum class TemplateInstance
public enum TemplateInstance
type TemplateInstance =
Public Enum TemplateInstance
- Dědičnost
Pole
Multiple | 0 | Šablona, která se vytvoří vícekrát. |
Single | 1 | Šablona, která se vytvoří pouze jednou. |
Příklady
Následující příklad kódu ukazuje, jak použít TemplateInstance výčet a TemplateInstanceAttribute třídu . Vlastní LoginView ovládací prvek s názvem MyLoginView
přepíše AnonymousTemplate vlastnost a pomocí TemplateInstanceAttribute třídy určí, že je vytvořena pouze jedna instance AnonymousTemplate vlastnosti.
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
Následující příklad kódu je soubor ASPX, který používá MyLoginView
ovládací prvek a ukazuje, jak získat přístup k ovládacímu Label prvku, který je uvnitř AnonymousTemplate vlastnosti.
<%@ 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>
Poznámky
Výčet TemplateInstance určuje hodnoty označující počet vytvoření instance šablony. Třída TemplateInstanceAttribute používá hodnoty z výčtu TemplateInstanceAttribute . Pole a Multiple konkrétně Single určují jednu instanci šablony a více instancí šablony v uvedeném pořadí. Jedna instance šablony umožňuje odkazovat na ovládací prvky, které jsou obsaženy v šabloně.
Příklady ovládacích prvků, které v metadatech vlastnosti používají hodnotu Single, zahrnují ZoneTemplate vlastnost CatalogZone ovládacího prvku, ZoneTemplate vlastnost EditorZone ovládacího prvku a ZoneTemplate vlastnost WebPartZone.