TemplateGroupCollectionとは? わかりやすく解説

TemplateGroupCollection クラス

メモ : このクラスは、.NET Framework version 2.0 で新しく追加されたものです。

コントロール デザイナ内の TemplateGroup オブジェクトのコレクションを表します。このクラスは継承できません。

名前空間: System.Web.UI.Design
アセンブリ: System.Design (system.design.dll 内)
構文構文

Public NotInheritable Class
 TemplateGroupCollection
    Implements IList, ICollection, IEnumerable
Dim instance As TemplateGroupCollection
public sealed class TemplateGroupCollection
 : IList, ICollection, IEnumerable
public ref class TemplateGroupCollection sealed
 : IList, ICollection, IEnumerable
public final class TemplateGroupCollection
 implements IList, ICollection, 
    IEnumerable
public final class TemplateGroupCollection
 implements IList, ICollection, 
    IEnumerable
解説解説

ControlDesigner クラスおよびすべての派生クラスでは、TemplateGroups プロパティは TemplateGroupCollection オブジェクトとして定義されます。TemplateGroupCollection プロパティは通常、Visual Studio 2005 などのデザイン ホストによってのみ使用されます。

コレクションのサイズは、オブジェクトが追加されるごとに動的に大きくなります。このコレクションのインデックスは 0 から始まります。コレクション内に存在するグループの数を確認するには、Count プロパティを使用します。

さらに、TemplateGroupCollection のメソッドおよびプロパティを使用して、次の機能を提供します。

使用例使用例

ControlDesigner クラスから派生する単純なコントロール デザイナを定義する方法を次のコード例に示します。派生コントロール デザイナは、基本クラスに対して定義されているテンプレート グループを取得し、派生コントロール デザイナに固有のテンプレート グループを追加して、TemplateGroups プロパティを実装します。

Imports System
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
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.
    }

}
継承階層継承階層
System.Object
  System.Web.UI.Design.TemplateGroupCollection
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

TemplateGroupCollection コンストラクタ

メモ : このコンストラクタは、.NET Framework version 2.0 で新しく追加されたものです。

TemplateGroupCollection クラスの新しいインスタンスを初期化します。

名前空間: System.Web.UI.Design
アセンブリ: System.Design (system.design.dll 内)
構文構文

Dim instance As New TemplateGroupCollection
public TemplateGroupCollection ()
public:
TemplateGroupCollection ()
public TemplateGroupCollection ()
public function TemplateGroupCollection ()
解説解説
.NET Framework のセキュリティ.NET Framework のセキュリティ
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

TemplateGroupCollection プロパティ


パブリック プロパティパブリック プロパティ

明示的インターフェイスの実装明示的インターフェイスの実装
  名前 説明
インターフェイスの明示的な実装 System.Collections.ICollection.Count このメンバの説明については、Count のトピックを参照してください。
インターフェイスの明示的な実装 System.Collections.ICollection.IsSynchronized このメンバの説明については、IsSynchronized のトピックを参照してください。
インターフェイスの明示的な実装 System.Collections.ICollection.SyncRoot このメンバの説明については、SyncRoot のトピックを参照してください。
インターフェイスの明示的な実装 System.Collections.IList.IsFixedSize このメンバの説明については、IsFixedSize のトピックを参照してください。
インターフェイスの明示的な実装 System.Collections.IList.IsReadOnly このメンバの説明については、IsReadOnly のトピックを参照してください。
インターフェイスの明示的な実装 System.Collections.IList.Item このメンバの詳細については、IList クラスのトピックを参照してください。
参照参照

関連項目

TemplateGroupCollection クラス
System.Web.UI.Design 名前空間
ControlDesigner.TemplateGroups プロパティ
TemplateGroup クラス
TemplateDefinition クラス

その他の技術情報

ASP.NET コントロール デザイナの概要
デザイン時サポートの拡張
方法 : デザイン モードでコントロールの外観と動作を拡張する

TemplateGroupCollection メソッド


パブリック メソッドパブリック メソッド

( プロテクト メソッド も参照)
  名前 説明
パブリック メソッド Add 指定した TemplateGroup オブジェクトをコレクションの末尾に追加します。
パブリック メソッド AddRange 既存の TemplateGroupCollection オブジェクト内のテンプレート グループを現在の TemplateGroupCollection オブジェクトに追加します。
パブリック メソッド Clear コレクションからすべてのグループを削除します。
パブリック メソッド Contains 指定したグループがコレクション内に存在するかどうかを確認します。
パブリック メソッド CopyTo コピー先配列の指定されたインデックスを開始位置として、コレクション内のグループを互換性がある 1 次元配列にコピーします。
パブリック メソッド Equals  オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 ( Object から継承されます。)
パブリック メソッド GetHashCode  特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 ( Object から継承されます。)
パブリック メソッド GetType  現在のインスタンスの Type を取得します。 ( Object から継承されます。)
パブリック メソッド IndexOf コレクション内の指定した TemplateGroup オブジェクトのインデックスを返します。
パブリック メソッド Insert コレクション内の指定したインデックス位置に、TemplateGroup オブジェクトを挿入します。
パブリック メソッド ReferenceEquals  指定した複数の Object インスタンスが同一かどうかを判断します。 ( Object から継承されます。)
パブリック メソッド Remove 指定した TemplateGroup オブジェクトをコレクションから削除します。
パブリック メソッド RemoveAt コレクション内の指定したインデックス位置にある TemplateGroup オブジェクトを削除します。
パブリック メソッド ToString  現在の Object を表す String を返します。 ( Object から継承されます。)
プロテクト メソッドプロテクト メソッド
明示的インターフェイスの実装明示的インターフェイスの実装
  名前 説明
インターフェイスの明示的な実装 System.Collections.ICollection.CopyTo このメンバの説明については、CopyTo のトピックを参照してください。
インターフェイスの明示的な実装 System.Collections.IEnumerable.GetEnumerator このメンバの説明については、GetEnumerator のトピックを参照してください。
インターフェイスの明示的な実装 System.Collections.IList.Add このメンバの説明については、Add のトピックを参照してください。
インターフェイスの明示的な実装 System.Collections.IList.Clear このメンバの説明については、Clear のトピックを参照してください。
インターフェイスの明示的な実装 System.Collections.IList.Contains このメンバの説明については、Contains のトピックを参照してください。
インターフェイスの明示的な実装 System.Collections.IList.IndexOf このメンバの説明については、IndexOf のトピックを参照してください。
インターフェイスの明示的な実装 System.Collections.IList.Insert このメンバの説明については、Insert のトピックを参照してください。
インターフェイスの明示的な実装 System.Collections.IList.Remove このメンバの説明については、Remove のトピックを参照してください。
インターフェイスの明示的な実装 System.Collections.IList.RemoveAt このメンバの説明については、RemoveAt のトピックを参照してください。
参照参照

関連項目

TemplateGroupCollection クラス
System.Web.UI.Design 名前空間
ControlDesigner.TemplateGroups プロパティ
TemplateGroup クラス
TemplateDefinition クラス

その他の技術情報

ASP.NET コントロール デザイナの概要
デザイン時サポートの拡張
方法 : デザイン モードでコントロールの外観と動作を拡張する

TemplateGroupCollection メンバ

コントロール デザイナ内の TemplateGroup オブジェクトのコレクションを表します。このクラスは継承できません。

TemplateGroupCollection データ型で公開されるメンバを以下の表に示します。


パブリック コンストラクタパブリック コンストラクタ
  名前 説明
パブリック メソッド TemplateGroupCollection TemplateGroupCollection クラスの新しいインスタンスを初期化します。
パブリック プロパティパブリック プロパティ
パブリック メソッドパブリック メソッド
( プロテクト メソッド も参照)
  名前 説明
パブリック メソッド Add 指定した TemplateGroup オブジェクトをコレクションの末尾に追加します。
パブリック メソッド AddRange 既存の TemplateGroupCollection オブジェクト内のテンプレート グループを現在の TemplateGroupCollection オブジェクトに追加します。
パブリック メソッド Clear コレクションからすべてのグループを削除します。
パブリック メソッド Contains 指定したグループがコレクション内に存在するかどうかを確認します。
パブリック メソッド CopyTo コピー先配列の指定されたインデックスを開始位置として、コレクション内のグループを互換性がある 1 次元配列にコピーします。
パブリック メソッド Equals  オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 (Object から継承されます。)
パブリック メソッド GetHashCode  特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 (Object から継承されます。)
パブリック メソッド GetType  現在のインスタンスの Type を取得します。 (Object から継承されます。)
パブリック メソッド IndexOf コレクション内の指定した TemplateGroup オブジェクトのインデックスを返します。
パブリック メソッド Insert コレクション内の指定したインデックス位置に、TemplateGroup オブジェクトを挿入します。
パブリック メソッド ReferenceEquals  指定した複数の Object インスタンスが同一かどうかを判断します。 (Object から継承されます。)
パブリック メソッド Remove 指定した TemplateGroup オブジェクトをコレクションから削除します。
パブリック メソッド RemoveAt コレクション内の指定したインデックス位置にある TemplateGroup オブジェクトを削除します。
パブリック メソッド ToString  現在の Object を表す String を返します。 (Object から継承されます。)
プロテクト メソッドプロテクト メソッド
明示的インターフェイスの実装明示的インターフェイスの実装
  名前 説明
インターフェイスの明示的な実装 System.Collections.ICollection.CopyTo このメンバの説明については、CopyTo のトピックを参照してください。
インターフェイスの明示的な実装 System.Collections.IEnumerable.GetEnumerator このメンバの説明については、GetEnumerator のトピックを参照してください。
インターフェイスの明示的な実装 System.Collections.IList.Add このメンバの説明については、Add のトピックを参照してください。
インターフェイスの明示的な実装 System.Collections.IList.Clear このメンバの説明については、Clear のトピックを参照してください。
インターフェイスの明示的な実装 System.Collections.IList.Contains このメンバの説明については、Contains のトピックを参照してください。
インターフェイスの明示的な実装 System.Collections.IList.IndexOf このメンバの説明については、IndexOf のトピックを参照してください。
インターフェイスの明示的な実装 System.Collections.IList.Insert このメンバの説明については、Insert のトピックを参照してください。
インターフェイスの明示的な実装 System.Collections.IList.Remove このメンバの説明については、Remove のトピックを参照してください。
インターフェイスの明示的な実装 System.Collections.IList.RemoveAt このメンバの説明については、RemoveAt のトピックを参照してください。
インターフェイスの明示的な実装 System.Collections.ICollection.Count このメンバの説明については、Count のトピックを参照してください。
インターフェイスの明示的な実装 System.Collections.ICollection.IsSynchronized このメンバの説明については、IsSynchronized のトピックを参照してください。
インターフェイスの明示的な実装 System.Collections.ICollection.SyncRoot このメンバの説明については、SyncRoot のトピックを参照してください。
インターフェイスの明示的な実装 System.Collections.IList.IsFixedSize このメンバの説明については、IsFixedSize のトピックを参照してください。
インターフェイスの明示的な実装 System.Collections.IList.IsReadOnly このメンバの説明については、IsReadOnly のトピックを参照してください。
インターフェイスの明示的な実装 System.Collections.IList.Item このメンバの詳細については、IList クラスのトピックを参照してください。
参照参照

関連項目

TemplateGroupCollection クラス
System.Web.UI.Design 名前空間
ControlDesigner.TemplateGroups プロパティ
TemplateGroup クラス
TemplateDefinition クラス

その他の技術情報

ASP.NET コントロール デザイナの概要
デザイン時サポートの拡張
方法 : デザイン モードでコントロールの外観と動作を拡張する



英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

「TemplateGroupCollection」の関連用語

TemplateGroupCollectionのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



TemplateGroupCollectionのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS