Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

TemplateInstanceAttribute-Klasse

 

Definiert ein Metadatenattribut, mit der die Anzahl der zulässigen Instanzen einer Vorlage angeben. Diese Klasse kann nicht vererbt werden.

Namespace:   System.Web.UI
Assembly:  System.Web (in System.Web.dll)

System.Object
  System.Attribute
    System.Web.UI.TemplateInstanceAttribute

[AttributeUsageAttribute(AttributeTargets.Property)]
public sealed class TemplateInstanceAttribute : Attribute

NameBeschreibung
System_CAPS_pubmethodTemplateInstanceAttribute(TemplateInstance)

Initialisiert eine neue Instanz von der TemplateInstanceAttribute -Klasse mit dem angegebenen TemplateInstance -Enumerationswert.

NameBeschreibung
System_CAPS_pubpropertyInstances

Ruft den TemplateInstance -Enumerationswert, der die aktuelle Vorlageninstanz darstellt.

System_CAPS_pubpropertyTypeId

Ruft bei Implementierung in einer abgeleiteten Klasse einen eindeutigen Bezeichner für dieses Attribute ab.(Geerbt von Attribute.)

NameBeschreibung
System_CAPS_pubmethodEquals(Object)

Gibt an, ob das angegebene Objekt ist ein TemplateInstanceAttribute -Objekt und ist identisch mit dem dieser TemplateInstanceAttribute Objekt.(Setzt "Attribute.Equals(Object)" außer Kraft.)

System_CAPS_pubmethodGetHashCode()

Ruft einen Hashcode für diese TemplateInstanceAttribute Objekt.(Setzt "Attribute.GetHashCode()" außer Kraft.)

System_CAPS_pubmethodGetType()

Ruft den Type der aktuellen Instanz ab.(Geerbt von Object.)

System_CAPS_pubmethodIsDefaultAttribute()

Gibt einem Wert angibt, ob die aktuelle TemplateInstanceAttribute Objekt ist die Standardeinstellung TemplateInstanceAttribute Objekt.(Setzt "Attribute.IsDefaultAttribute()" außer Kraft.)

System_CAPS_pubmethodMatch(Object)

Ruft beim Überschreiben in einer abgeleiteten Klasse gibt einen Wert, der angibt, ob diese Instanz gleich ein angegebenen Objekt ist.(Geerbt von Attribute.)

System_CAPS_pubmethodToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.(Geerbt von Object.)

NameBeschreibung
System_CAPS_pubfieldSystem_CAPS_staticDefault

Definiert den Standardwert für die TemplateInstanceAttribute Klasse. Dieses Feld ist schreibgeschützt.

System_CAPS_pubfieldSystem_CAPS_staticMultiple

Erstellt eine Instanz der TemplateInstanceAttribute -Klasse eine Vorlage, die mehrmals instanziiert werden. Dieses Feld ist schreibgeschützt.

System_CAPS_pubfieldSystem_CAPS_staticSingle

Erstellt eine Instanz der TemplateInstanceAttribute -Klasse eine Vorlage, die nur einmal instanziiert werden. Dieses Feld ist schreibgeschützt.

NameBeschreibung
System_CAPS_pubinterfaceSystem_CAPS_privmethod_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Ordnet eine Reihe von Namen einer entsprechenden Reihe von Dispatchbezeichnern zu.(Geerbt von Attribute.)

System_CAPS_pubinterfaceSystem_CAPS_privmethod_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Ruft die Typinformationen für ein Objekt ab, mit deren Hilfe die Typinformationen für eine Schnittstelle abgerufen werden können.(Geerbt von Attribute.)

System_CAPS_pubinterfaceSystem_CAPS_privmethod_Attribute.GetTypeInfoCount(UInt32)

Ruft die Anzahl der Schnittstellen mit Typinformationen ab, die von einem Objekt bereitgestellt werden (0 oder 1).(Geerbt von Attribute.)

System_CAPS_pubinterfaceSystem_CAPS_privmethod_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Stellt den Zugriff auf von einem Objekt verfügbar gemachte Eigenschaften und Methoden bereit.(Geerbt von Attribute.)

Die TemplateInstanceAttribute -Klasse können Sie eine Vorlageneigenschaft als, mit dem können einzelne oder mehrere Instanziierungen markieren. Eine Vorlage, die nur eine einzelne Instanziierung zulässt kann die Steuerelemente verfügen, die ihm verwiesen enthalten sind. Die ZoneTemplate Eigenschaft ist ein Beispiel für eine Eigenschaft, die nur einmal instanziiert werden kann.

Diese TemplateInstanceAttribute Klasse ist optional. Wenn eine Vorlageneigenschaft nicht mit erweitert wird eine TemplateInstanceAttribute -Klasse, der Standardwert der Multiple Feld, verwendet. Weitere Informationen zum Verwenden von Attributen finden Sie unter Erweitern von Metadaten mithilfe von Attributen.

Im folgenden Codebeispiel wird veranschaulicht, wie Sie die TemplateInstance Enumeration und die TemplateInstanceAttribute Klasse. Eine benutzerdefinierte LoginView -Steuerelement namens MyLoginViewA überschreibt die AnonymousTemplate -Eigenschaft und verwendet die TemplateInstanceAttribute Klasse, um anzugeben, dass nur eine Instanz der AnonymousTemplate -Eigenschaft erstellt.

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 MyLoginViewA : 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;
			}
		}
	}
}

Im folgenden Codebeispiel ist eine ASPX-Datei, verwendet die MyLoginViewA steuern und veranschaulicht den Zugriff auf Eigenschaften von der TemplateInstanceAttribute Klasse.

<%@ Page Language="C#" %>
<%@ Import Namespace="System.Reflection" %>
<%@ 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)
  {

    // Get the class type for which to access metadata.
    Type clsType = typeof(MyLoginViewA);
    // Get the PropertyInfo object for FirstTemplate.
    PropertyInfo pInfo = clsType.GetProperty("AnonymousTemplate");
    // See if the TemplateInstanceAttribute is defined for this property.
    bool isDef = Attribute.IsDefined(pInfo, typeof(TemplateInstanceAttribute));

    // Display the result if the attribute exists.
    if (isDef)
    {
      TemplateInstanceAttribute tia =
        (TemplateInstanceAttribute)Attribute.GetCustomAttribute(pInfo, typeof(TemplateInstanceAttribute));
      Response.Write("The <AnonymousTemplate> has the TemplateInstanceAttribute = " + tia.Instances.ToString() + ".<br />");
      if (tia.IsDefaultAttribute())
        Response.Write("The TemplateInstanceAttribute used is the same as the default instance.");
      else
        Response.Write("The TemplateInstanceAttribute used is not the same as the default instance.");
    }

  }

</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:MyLoginViewA id="MyLoginViewA1" runat="server">
        <AnonymousTemplate>
          <asp:Label ID="LoginViewLabel1" runat="server" Text="LoginView Anonymous Template Text"/>
        </AnonymousTemplate>
      </AspNetSamples:MyLoginViewA>
    </div>
    </form>
</body>
</html>

.NET Framework
Verfügbar seit 2.0

Öffentliche statische (in Visual Basic freigegebene) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Zurück zum Anfang
Anzeigen: