TemplateGroupCollection Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Representerar en samling TemplateGroup objekt i en kontrolldesigner. Det går inte att ärva den här klassen.
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
- Arv
-
TemplateGroupCollection
- Implementeringar
Exempel
Följande kodexempel visar hur du definierar en enkel kontrolldesigner som härleds från ControlDesigner klassen. Den härledda kontrolldesignern implementerar TemplateGroups egenskapen genom att hämta de mallgrupper som definieras för basklassen och lägga till en mallgrupp som är specifik för den härledda kontrolldesignern.
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
Kommentarer
Klassen ControlDesigner och alla härledda klasser definierar TemplateGroups egenskapen som ett TemplateGroupCollection objekt. Egenskapen TemplateGroupCollection används vanligtvis endast av en designvärd, till exempel Visual Studio 2005.
Samlingen ökar dynamiskt i storlek när objekt läggs till. Index i den här samlingen är nollbaserade. Använd egenskapen Count för att avgöra hur många grupper som finns i samlingen.
Använd dessutom TemplateGroupCollection metoderna och egenskaperna för att tillhandahålla följande funktioner:
Metoden Add för att lägga till en enskild grupp i samlingen.
Metoden Insert för att lägga till en grupp vid ett visst index i samlingen.
Metoden Remove för att ta bort en grupp.
Metoden RemoveAt för att ta bort gruppen vid ett visst index.
Metoden Contains för att avgöra om en viss grupp redan finns i samlingen.
Metoden IndexOf för att hämta indexet för en grupp i samlingen.
Indexeraren Item[] för att hämta eller ange gruppen till ett visst index med hjälp av matris notation.
Metoden AddRange för att lägga till flera grupper i samlingen.
Du kan lägga till flera grupper antingen som en matris med grupper eller som ett TemplateGroupCollection objekt som du hämtar via egenskapen för TemplateGroups en annan kontrolldesigner.
Metoden Clear för att ta bort alla grupper från samlingen.
Konstruktorer
| Name | Description |
|---|---|
| TemplateGroupCollection() |
Initierar en ny instans av TemplateGroupCollection klassen. |
Egenskaper
| Name | Description |
|---|---|
| Count |
Hämtar antalet TemplateGroup objekt i samlingen. |
| Item[Int32] |
Hämtar eller anger ett TemplateGroup objekt vid det angivna indexet i samlingen. |
Metoder
| Name | Description |
|---|---|
| Add(TemplateGroup) |
Lägger till det angivna TemplateGroup objektet i slutet av samlingen. |
| AddRange(TemplateGroupCollection) |
Lägger till mallgrupperna i ett befintligt TemplateGroupCollection objekt i det aktuella TemplateGroupCollection objektet. |
| Clear() |
Tar bort alla grupper från samlingen. |
| Contains(TemplateGroup) |
Avgör om den angivna gruppen finns i samlingen. |
| CopyTo(TemplateGroup[], Int32) |
Kopierar grupperna i samlingen till en kompatibel endimensionell matris, med början vid det angivna indexet för målmatrisen. |
| Equals(Object) |
Avgör om det angivna objektet är lika med det aktuella objektet. (Ärvd från Object) |
| GetHashCode() |
Fungerar som standard-hash-funktion. (Ärvd från Object) |
| GetType() |
Hämtar den aktuella instansen Type . (Ärvd från Object) |
| IndexOf(TemplateGroup) |
Returnerar indexet för det angivna TemplateGroup objektet i samlingen. |
| Insert(Int32, TemplateGroup) |
Infogar ett TemplateGroup objekt i samlingen vid det angivna indexet. |
| MemberwiseClone() |
Skapar en ytlig kopia av den aktuella Object. (Ärvd från Object) |
| Remove(TemplateGroup) |
Tar bort det angivna TemplateGroup objektet från samlingen. |
| RemoveAt(Int32) |
Tar bort objektet TemplateGroup vid det angivna indexet i samlingen. |
| ToString() |
Returnerar en sträng som representerar det aktuella objektet. (Ärvd från Object) |
Explicita gränssnittsimplementeringar
| Name | Description |
|---|---|
| ICollection.CopyTo(Array, Int32) |
En beskrivning av den här medlemmen finns i CopyTo(Array, Int32). |
| ICollection.Count |
En beskrivning av den här medlemmen finns i Count. |
| ICollection.IsSynchronized |
En beskrivning av den här medlemmen finns i IsSynchronized. |
| ICollection.SyncRoot |
En beskrivning av den här medlemmen finns i SyncRoot. |
| IEnumerable.GetEnumerator() |
En beskrivning av den här medlemmen finns i GetEnumerator(). |
| IList.Add(Object) |
En beskrivning av den här medlemmen finns i Add(Object). |
| IList.Clear() |
En beskrivning av den här medlemmen finns i Clear(). |
| IList.Contains(Object) |
En beskrivning av den här medlemmen finns i Contains(Object). |
| IList.IndexOf(Object) |
En beskrivning av den här medlemmen finns i IndexOf(Object). |
| IList.Insert(Int32, Object) |
En beskrivning av den här medlemmen finns i Insert(Int32, Object). |
| IList.IsFixedSize |
En beskrivning av den här medlemmen finns i IsFixedSize. |
| IList.IsReadOnly |
En beskrivning av den här medlemmen finns i IsReadOnly. |
| IList.Item[Int32] |
En beskrivning av den här medlemmen finns i IList klassen . |
| IList.Remove(Object) |
En beskrivning av den här medlemmen finns i Remove(Object). |
| IList.RemoveAt(Int32) |
En beskrivning av den här medlemmen finns i RemoveAt(Int32). |
Tilläggsmetoder
| Name | Description |
|---|---|
| AsParallel(IEnumerable) |
Möjliggör parallellisering av en fråga. |
| AsQueryable(IEnumerable) |
Konverterar en IEnumerable till en IQueryable. |
| Cast<TResult>(IEnumerable) |
Omvandlar elementen i en IEnumerable till den angivna typen. |
| OfType<TResult>(IEnumerable) |
Filtrerar elementen i en IEnumerable baserat på en angiven typ. |