TemplateGroupCollection Classe
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.
Rappresenta una raccolta di oggetti TemplateGroup all'interno di una finestra di progettazione controlli. La classe non può essere ereditata.
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
- Ereditarietà
-
TemplateGroupCollection
- Implementazioni
Esempio
Nell'esempio di codice seguente viene illustrato come definire una finestra di progettazione di controlli semplice derivata dalla ControlDesigner classe . Progettazione controlli derivati implementa la TemplateGroups proprietà ottenendo i gruppi di modelli definiti per la classe di base e aggiungendo un gruppo di modelli specifico per la finestra di progettazione controlli derivata.
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
Commenti
La ControlDesigner classe e qualsiasi classe derivata definiscono la TemplateGroups proprietà come TemplateGroupCollection oggetto . La TemplateGroupCollection proprietà viene in genere usata solo da un host di progettazione, ad esempio Visual Studio 2005.
La raccolta aumenta dinamicamente di dimensioni man mano che vengono aggiunti oggetti. Gli indici in questa raccolta sono in base zero. Utilizzare la Count proprietà per determinare il numero di gruppi presenti nell'insieme.
Inoltre, usare i TemplateGroupCollection metodi e le proprietà per fornire le funzionalità seguenti:
Metodo Add per aggiungere un singolo gruppo alla raccolta.
Metodo Insert per aggiungere un gruppo in corrispondenza di un indice specifico all'interno dell'insieme.
Metodo Remove per rimuovere un gruppo.
Metodo RemoveAt per rimuovere il gruppo in corrispondenza di un indice specifico.
Metodo Contains per determinare se un determinato gruppo è già presente nell'insieme.
Metodo IndexOf per recuperare l'indice di un gruppo all'interno dell'insieme.
Indicizzatore Item[] per ottenere o impostare il gruppo in corrispondenza di un indice specifico, utilizzando la notazione della matrice.
Metodo AddRange per aggiungere più gruppi alla raccolta.
È possibile aggiungere più gruppi come matrice di gruppi o come TemplateGroupCollection oggetto recuperato tramite la TemplateGroups proprietà di un'altra finestra di progettazione controlli.
Metodo Clear per rimuovere tutti i gruppi dalla raccolta.
Costruttori
TemplateGroupCollection() |
Inizializza una nuova istanza della classe TemplateGroupCollection. |
Proprietà
Count |
Ottiene il numero di oggetti TemplateGroup contenuti nell'insieme. |
Item[Int32] |
Ottiene o imposta un oggetto TemplateGroup nella raccolta in corrispondenza dell'indice specificato. |
Metodi
Add(TemplateGroup) |
Aggiunge l'oggetto TemplateGroup specificato alla fine dell'insieme. |
AddRange(TemplateGroupCollection) |
Aggiungere i gruppi di modelli di un oggetto TemplateGroupCollection esistente all'oggetto TemplateGroupCollection corrente. |
Clear() |
Rimuove tutti i gruppi dall'insieme. |
Contains(TemplateGroup) |
Determina se il gruppo specificato è contenuto nell'insieme. |
CopyTo(TemplateGroup[], Int32) |
Copia i gruppi dell'insieme in una matrice compatibile unidimensionale, a partire dall'indice specificato della matrice di destinazione. |
Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
GetType() |
Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
IndexOf(TemplateGroup) |
Restituisce l'indice dell'oggetto TemplateGroup specificato all'interno della raccolta. |
Insert(Int32, TemplateGroup) |
Inserisce un oggetto TemplateGroup nell'insieme, in corrispondenza dell'indice specificato. |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
Remove(TemplateGroup) |
Rimuove l'oggetto TemplateGroup specificato dalla raccolta. |
RemoveAt(Int32) |
Rimuove l'oggetto TemplateGroup in corrispondenza dell'indice specificato all'interno della raccolta. |
ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
Implementazioni dell'interfaccia esplicita
ICollection.CopyTo(Array, Int32) |
Per una descrizione di questo membro, vedere CopyTo(Array, Int32). |
ICollection.Count |
Per una descrizione di questo membro, vedere Count. |
ICollection.IsSynchronized |
Per una descrizione di questo membro, vedere IsSynchronized. |
ICollection.SyncRoot |
Per una descrizione di questo membro, vedere SyncRoot. |
IEnumerable.GetEnumerator() |
Per una descrizione di questo membro, vedere GetEnumerator(). |
IList.Add(Object) |
Per una descrizione di questo membro, vedere Add(Object). |
IList.Clear() |
Per una descrizione di questo membro, vedere Clear(). |
IList.Contains(Object) |
Per una descrizione di questo membro, vedere Contains(Object). |
IList.IndexOf(Object) |
Per una descrizione di questo membro, vedere IndexOf(Object). |
IList.Insert(Int32, Object) |
Per una descrizione di questo membro, vedere Insert(Int32, Object). |
IList.IsFixedSize |
Per una descrizione di questo membro, vedere IsFixedSize. |
IList.IsReadOnly |
Per una descrizione di questo membro, vedere IsReadOnly. |
IList.Item[Int32] |
Per una descrizione di questo membro, vedere la classe IList. |
IList.Remove(Object) |
Per una descrizione di questo membro, vedere Remove(Object). |
IList.RemoveAt(Int32) |
Per una descrizione di questo membro, vedere RemoveAt(Int32). |
Metodi di estensione
Cast<TResult>(IEnumerable) |
Esegue il cast degli elementi di un oggetto IEnumerable nel tipo specificato. |
OfType<TResult>(IEnumerable) |
Filtra gli elementi di un oggetto IEnumerable in base a un tipo specificato. |
AsParallel(IEnumerable) |
Consente la parallelizzazione di una query. |
AsQueryable(IEnumerable) |
Converte un oggetto IEnumerable in un oggetto IQueryable. |