TemplateGroupCollection Clase

Definición

Representa una colección de objetos TemplateGroup dentro de un diseñador de controles.Represents a collection of TemplateGroup objects within a control designer. No se puede heredar esta clase.This class cannot be inherited.

public ref class TemplateGroupCollection sealed : System::Collections::IList
public sealed class TemplateGroupCollection : System.Collections.IList
type TemplateGroupCollection = class
    interface IList
    interface ICollection
    interface IEnumerable
Public NotInheritable Class TemplateGroupCollection
Implements IList
Herencia
TemplateGroupCollection
Implementaciones

Ejemplos

En el ejemplo de código siguiente se muestra cómo definir un diseñador de controles simple que se deriva de la ControlDesigner clase.The following code example demonstrates how to define a simple control designer that is derived from the ControlDesigner class. El diseñador de controles derivado implementa la TemplateGroups propiedad obteniendo los grupos de plantillas definidos para la clase base y agregando un grupo de plantillas específico del diseñador de controles derivado.The derived control designer implements the TemplateGroups property by getting the template groups that are defined for the base class and adding a template group that is specific to the derived control designer.

using System;
using System.Web.UI;
using System.Web.UI.Design;
using System.Web.UI.WebControls;
using System.Web.UI.Design.WebControls;
using System.ComponentModel;
using System.ComponentModel.Design;

namespace Examples.AspNet
{
    // Define a simple control designer that adds a
    // template group to the template group collection.
    class DerivedControlDesigner : System.Web.UI.Design.ControlDesigner
    {
        private DerivedControl internalControl = null;

        private const String templateGroupName = "My template group";
        private const String templateDefinitionName1 = "First";
        private const String templateDefinitionName2 = "Second";
        private TemplateGroup internalGroup = null;

        // Override the read-only TemplateGroups property.
        // Get the base group collection, and add a group 
        // with two template definitions for the derived
        // control designer.
        public override TemplateGroupCollection TemplateGroups
        {
            get
            {
                // Start with the groups defined by the base designer class.
                TemplateGroupCollection groups = base.TemplateGroups;

                if (internalGroup == null) 
                {
                    // Define a new group with two template definitions.
                    internalGroup = new TemplateGroup(templateGroupName, 
                                                internalControl.ControlStyle);

                    TemplateDefinition templateDef1 = new TemplateDefinition(this, 
                        templateDefinitionName1, internalControl, 
                        templateDefinitionName1, internalControl.ControlStyle);

                    TemplateDefinition templateDef2 = new TemplateDefinition(this, 
                        templateDefinitionName2, internalControl, 
                        templateDefinitionName2, internalControl.ControlStyle);

                    internalGroup.AddTemplateDefinition(templateDef1);
                    internalGroup.AddTemplateDefinition(templateDef2);
                }

                // Add the new template group to the collection.
                groups.Add(internalGroup);

                return groups;
            }
        }
    }

    // Define a simple web control, and associate it with the designer.
    [DesignerAttribute(typeof(DerivedControlDesigner),
                       typeof(IDesigner))]
    public class DerivedControl : WebControl
    {
        // Define derived control behavior here.
    }
}
Imports System.Web.UI
Imports System.Web.UI.Design
Imports System.Web.UI.WebControls
Imports System.Web.UI.Design.WebControls
Imports System.ComponentModel
Imports System.ComponentModel.Design

Namespace Examples.AspNet

    ' Define a simple control designer that adds a
    ' template group to the template group collection.
    Class DerivedControlDesigner
        Inherits System.Web.UI.Design.ControlDesigner

        Private Dim internalControl As DerivedControl = Nothing
    
        Private Const templateGroupName As String = "My template group"
        Private Const templateDefinitionName1 As String = "First"
        Private Const templateDefinitionName2 As String = "Second"
        Private Dim internalGroup As TemplateGroup = Nothing

        ' Override the read-only TemplateGroups property.
        ' Get the base group collection, and add a group 
        ' with two template definitions for the derived
        ' control designer.
        Public Overrides ReadOnly Property TemplateGroups As TemplateGroupCollection
            Get

                ' Start with the groups defined by the base designer class.
                Dim groups As TemplateGroupCollection  = MyBase.TemplateGroups

                If internalGroup Is Nothing

                    ' Define a new group with two template definitions.
                    internalGroup = New TemplateGroup(templateGroupName, _
                                                internalControl.ControlStyle)

                    Dim templateDef1 As TemplateDefinition = new TemplateDefinition(Me, _
                        templateDefinitionName1, internalControl, _
                        templateDefinitionName1, internalControl.ControlStyle)

                    Dim templateDef2 As TemplateDefinition = new TemplateDefinition(Me, _
                        templateDefinitionName2, internalControl, _
                        templateDefinitionName2, internalControl.ControlStyle)

                    internalGroup.AddTemplateDefinition(templateDef1)
                    internalGroup.AddTemplateDefinition(templateDef2)

                End If

                ' Add the new template group to the collection.
                groups.Add(internalGroup)

                return groups
            End Get
        End Property

    End Class

    ' Simple Web control, derived from the Web control class.
    <DesignerAttribute(GetType(DerivedControlDesigner), GetType(IDesigner))> _
    Public Class DerivedControl
        Inherits WebControl
        
        ' Define derived control behavior here.
    End Class

End Namespace

Comentarios

La ControlDesigner clase y cualquier clase derivada define la TemplateGroups propiedad como un TemplateGroupCollection objeto.The ControlDesigner class, and any derived class, defines the TemplateGroups property as a TemplateGroupCollection object. La TemplateGroupCollection propiedad solo se usa normalmente en un host de diseño como Visual Studio 2005Visual Studio 2005 .The TemplateGroupCollection property is typically used only by a design host such as Visual Studio 2005Visual Studio 2005.

La colección aumenta dinámicamente de tamaño a medida que se agregan objetos.The collection dynamically increases in size as objects are added. Los índices de esta colección tienen una base cero.Indexes in this collection are zero-based. Utilice la Count propiedad para determinar el número de grupos que hay en la colección.Use the Count property to determine how many groups are in the collection.

Además, use los TemplateGroupCollection métodos y las propiedades para proporcionar la siguiente funcionalidad:Additionally, use the TemplateGroupCollection methods and properties to provide the following functionality:

  • AddMétodo para agregar un solo grupo a la colección.The Add method to add a single group to the collection.

  • InsertMétodo para agregar un grupo en un índice determinado de la colección.The Insert method to add a group at a particular index within the collection.

  • RemoveMétodo para quitar un grupo.The Remove method to remove a group.

  • RemoveAtMétodo para quitar el grupo de un índice determinado.The RemoveAt method to remove the group at a particular index.

  • El Contains método para determinar si un grupo determinado ya está en la colección.The Contains method to determine whether a particular group is already in the collection.

  • El IndexOf método para recuperar el índice de un grupo dentro de la colección.The IndexOf method to retrieve the index of a group within the collection.

  • El Item[] indizador para obtener o establecer el grupo en un índice determinado, mediante la notación de matriz.The Item[] indexer to get or set the group at a particular index, using array notation.

  • AddRangeMétodo para agregar varios grupos a la colección.The AddRange method to add multiple groups to the collection.

    Puede agregar varios grupos como una matriz de grupos o como un TemplateGroupCollection objeto que recupere a través de la TemplateGroups propiedad de otro diseñador de controles.You can add multiple groups either as an array of groups or as a TemplateGroupCollection object that you retrieve through the TemplateGroups property of another control designer.

  • ClearMétodo para quitar todos los grupos de la colección.The Clear method to remove all groups from the collection.

Constructores

TemplateGroupCollection()

Inicializa una nueva instancia de la clase TemplateGroupCollection.Initializes a new instance of the TemplateGroupCollection class.

Propiedades

Count

Obtiene el número de objetos TemplateGroup que hay en la colección.Gets the number of TemplateGroup objects in the collection.

Item[Int32]

Obtiene o establece un objeto TemplateGroup en el índice especificado de la colección.Gets or sets a TemplateGroup object at the specified index in the collection.

Métodos

Add(TemplateGroup)

Agrega el objeto TemplateGroup especificado al final de la colección.Adds the specified TemplateGroup object to the end of the collection.

AddRange(TemplateGroupCollection)

Agrega los grupos de plantillas de un objeto TemplateGroupCollection existente al actual objeto TemplateGroupCollection.Adds the template groups in an existing TemplateGroupCollection object to the current TemplateGroupCollection object.

Clear()

Quita todos los grupos de la colección.Removes all groups from the collection.

Contains(TemplateGroup)

Determina si el grupo especificado está en la colección.Determines whether the specified group is contained within the collection.

CopyTo(TemplateGroup[], Int32)

Copia los grupos de la colección en una matriz unidimensional compatible, empezando en el índice especificado de la matriz de destino.Copies the groups in the collection to a compatible one-dimensional array, starting at the specified index of the target array.

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.Determines whether the specified object is equal to the current object.

(Heredado de Object)
GetHashCode()

Sirve como la función hash predeterminada.Serves as the default hash function.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.Gets the Type of the current instance.

(Heredado de Object)
IndexOf(TemplateGroup)

Devuelve el índice del objeto TemplateGroup especificado dentro de la colección.Returns the index of the specified TemplateGroup object within the collection.

Insert(Int32, TemplateGroup)

Inserta un objeto TemplateGroup en la colección, en el índice especificado.Inserts a TemplateGroup object into the collection at the specified index.

MemberwiseClone()

Crea una copia superficial del Object actual.Creates a shallow copy of the current Object.

(Heredado de Object)
Remove(TemplateGroup)

Quita el objeto TemplateGroup especificado de la colección.Removes the specified TemplateGroup object from the collection.

RemoveAt(Int32)

Quita el objeto TemplateGroup en el índice especificado de la colección.Removes the TemplateGroup object at the specified index within the collection.

ToString()

Devuelve una cadena que representa el objeto actual.Returns a string that represents the current object.

(Heredado de Object)

Implementaciones de interfaz explícitas

ICollection.CopyTo(Array, Int32)

Para obtener una descripción de este miembro, vea CopyTo(Array, Int32).For a description of this member, see CopyTo(Array, Int32).

ICollection.Count

Para obtener una descripción de este miembro, vea Count.For a description of this member, see Count.

ICollection.IsSynchronized

Para obtener una descripción de este miembro, vea IsSynchronized.For a description of this member, see IsSynchronized.

ICollection.SyncRoot

Para obtener una descripción de este miembro, vea SyncRoot.For a description of this member, see SyncRoot.

IEnumerable.GetEnumerator()

Para obtener una descripción de este miembro, vea GetEnumerator().For a description of this member, see GetEnumerator().

IList.Add(Object)

Para obtener una descripción de este miembro, vea Add(Object).For a description of this member, see Add(Object).

IList.Clear()

Para obtener una descripción de este miembro, vea Clear().For a description of this member, see Clear().

IList.Contains(Object)

Para obtener una descripción de este miembro, vea Contains(Object).For a description of this member, see Contains(Object).

IList.IndexOf(Object)

Para obtener una descripción de este miembro, vea IndexOf(Object).For a description of this member, see IndexOf(Object).

IList.Insert(Int32, Object)

Para obtener una descripción de este miembro, vea Insert(Int32, Object).For a description of this member, see Insert(Int32, Object).

IList.IsFixedSize

Para obtener una descripción de este miembro, vea IsFixedSize.For a description of this member, see IsFixedSize.

IList.IsReadOnly

Para obtener una descripción de este miembro, vea IsReadOnly.For a description of this member, see IsReadOnly.

IList.Item[Int32]

Para obtener una descripción de este miembro, vea la clase IList.For a description of this member, see the IList class.

IList.Remove(Object)

Para obtener una descripción de este miembro, vea Remove(Object).For a description of this member, see Remove(Object).

IList.RemoveAt(Int32)

Para obtener una descripción de este miembro, vea RemoveAt(Int32).For a description of this member, see RemoveAt(Int32).

Métodos de extensión

Cast<TResult>(IEnumerable)

Convierte los elementos de IEnumerable en el tipo especificado.Casts the elements of an IEnumerable to the specified type.

OfType<TResult>(IEnumerable)

Filtra los elementos de IEnumerable en función de un tipo especificado.Filters the elements of an IEnumerable based on a specified type.

AsParallel(IEnumerable)

Habilita la paralelización de una consulta.Enables parallelization of a query.

AsQueryable(IEnumerable)

Convierte una interfaz IEnumerable en IQueryable.Converts an IEnumerable to an IQueryable.

Se aplica a

Consulte también