Exportar (0) Imprimir
Expandir todo
Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

TemplateInstanceAttribute (Clase)

Define un atributo de metadatos utilizado para especificar el número de instancias permitidas de una plantilla. Esta clase no puede heredarse.

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

Espacio de nombres:  System.Web.UI
Ensamblado:  System.Web (en System.Web.dll)

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

El tipo TemplateInstanceAttribute expone los siguientes miembros.

  NombreDescripción
Método públicoTemplateInstanceAttributeInicializa una nueva instancia de la clase TemplateInstanceAttribute con el valor de enumeración TemplateInstance especificado.
Arriba

  NombreDescripción
Propiedad públicaInstancesObtiene el valor de enumeración TemplateInstance que representa la instancia de la plantilla actual.
Propiedad públicaTypeIdCuando se implementa en una clase derivada, obtiene un identificador único para este Attribute. (Se hereda de Attribute).
Arriba

  NombreDescripción
Método públicoEqualsIndica si el objeto especificado es un objeto TemplateInstanceAttribute y si es idéntico a este objeto TemplateInstanceAttribute. (Invalida a Attribute.Equals(Object)).
Método públicoGetHashCodeObtiene un código hash para este objeto TemplateInstanceAttribute. (Invalida a Attribute.GetHashCode()).
Método públicoGetType Obtiene el Typede la instancia actual. (Se hereda de Object).
Método públicoIsDefaultAttributeDevuelve un valor que indica si el objeto TemplateInstanceAttribute actual es igual que el objeto TemplateInstanceAttribute predeterminado. (Invalida a Attribute.IsDefaultAttribute()).
Método públicoMatch Cuando se invalida en una clase derivada, devuelve un valor que indica si esta instancia es igual al objeto especificado. (Se hereda de Attribute).
Método públicoToString Retorna una cadena que representa al objeto actual. (Se hereda de Object).
Arriba

  NombreDescripción
Campo públicoMiembro estáticoDefaultDefine el valor predeterminado de la clase TemplateInstanceAttribute. Este campo es de sólo lectura.
Campo públicoMiembro estáticoMultipleCrea una instancia de la clase TemplateInstanceAttribute que representa una plantilla de la que se crearán instancias varias veces. Este campo es de sólo lectura.
Campo públicoMiembro estáticoSingleCrea una instancia de la clase TemplateInstanceAttribute que representa una plantilla de la que creará una instancia una única vez. Este campo es de sólo lectura.
Arriba

  NombreDescripción
Implementación explícita de interfacesMétodo privado_Attribute.GetIDsOfNamesAsigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío. (Se hereda de Attribute).
Implementación explícita de interfacesMétodo privado_Attribute.GetTypeInfoObtiene la información de tipos de un objeto, que puede utilizarse para obtener la información de tipos de una interfaz. (Se hereda de Attribute).
Implementación explícita de interfacesMétodo privado_Attribute.GetTypeInfoCount

Recupera el número de interfaces de tipo de información que suministra un objeto (0 ó 1)

(Se hereda de Attribute).
Implementación explícita de interfacesMétodo privado_Attribute.InvokeProporciona acceso a las propiedades y los métodos expuestos por un objeto. (Se hereda de Attribute).
Arriba

La clase TemplateInstanceAttribute le permite marcar una propiedad de plantilla para que permita una o varias instancias. Una plantilla que sólo permite una única creación de instancias puede hacer referencia a los controles contenidos dentro de ella. La propiedad ZoneTemplate es un ejemplo de una propiedad en la que se puede crear instancias sólo una vez.

Esta clase TemplateInstanceAttribute es opcional. Si no se extiende una propiedad de plantilla con una clase TemplateInstanceAttribute, se utiliza el valor predeterminado, el campo Multiple. Para obtener más información sobre cómo utilizar atributos, vea Extender metadatos mediante atributos.

En el ejemplo de código siguiente se muestra cómo usar la enumeración TemplateInstance y la clase TemplateInstanceAttribute. Un control LoginView personalizado, denominado MyLoginViewA, reemplaza la propiedad AnonymousTemplate y utiliza la clase TemplateInstanceAttribute para especificar que sólo se crea una instancia de la propiedad AnonymousTemplate.


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


El ejemplo de código siguiente es un archivo ASPX que utiliza el control MyLoginViewA y muestra cómo tener acceso a las propiedades de la clase TemplateInstanceAttribute.


<%@ 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

Compatible con: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (no se admite el rol Server Core), Windows Server 2008 R2 (se admite el rol Server Core con SP1 o versiones posteriores; no se admite Itanium)

.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft