TemplateContainerAttribute コンストラクタ (Type)
アセンブリ: System.Web (system.web.dll 内)

- containerType

TemplatedFirstControl という名前の template 宣言されたコントロールを作成し、これを FirstTemplateContainer という名前のコンテナと関連付ける方法を次のコード例に示します。このコード例では、テンプレートが指定されない場合はサーバー時間を表示し、テンプレートが指定される場合はテンプレートの内容を表示するカスタム コントロールが作成されます。TemplateContainerAttribute クラスが FirstTemplate プロパティに対して使用されています。
' File name:templatecontainerattribute.vb. Imports System Imports System.Web Imports System.Web.UI Imports System.Web.UI.WebControls Imports System.Collections Namespace Samples.AspNet.VB.Controls <ParseChildren(True)> _ Public Class VB_TemplatedFirstControl Inherits Control Implements INamingContainer Private _firstTemplate As ITemplate Private [_text] As [String] = Nothing Private _myTemplateContainer As Control <System.Security.Permissions.PermissionSetAttribute(System.Security.Permissions.SecurityAction.Demand, Name:="FullTrust")> _ Protected Overrides Sub OnDataBinding(ByVal e As EventArgs) EnsureChildControls() MyBase.OnDataBinding(e) End Sub Public Property FirstTemplate() As ITemplate Get Return _firstTemplate End Get Set(ByVal value As ITemplate) _firstTemplate = Value End Set End Property Public Property [Text]() As [String] Get Return [_text] End Get Set(ByVal value As [String]) [_text] = Value End Set End Property Public ReadOnly Property DateTime() As [String] Get Return System.DateTime.Now.ToLongTimeString() End Get End Property Public ReadOnly Property MyTemplateContainer() As Control Get Return _myTemplateContainer End Get End Property <System.Security.Permissions.PermissionSetAttribute(System.Security.Permissions.SecurityAction.Demand, Name:="FullTrust")> _ Protected Overrides Sub CreateChildControls() If Not (FirstTemplate Is Nothing) Then _myTemplateContainer = New VB_FirstTemplateContainer(Me) FirstTemplate.InstantiateIn(_myTemplateContainer) Controls.Add(_myTemplateContainer) Else Controls.Add(New LiteralControl([Text] + " " + DateTime)) End If End Sub 'CreateChildControls End Class 'VB_TemplatedFirstControl Public Class VB_FirstTemplateContainer Inherits Control Implements INamingContainer Private _parent As VB_TemplatedFirstControl Public Sub New(ByVal parent As VB_TemplatedFirstControl) Me._parent = parent End Sub 'New Public ReadOnly Property [Text]() As [String] Get Return _parent.Text End Get End Property Public ReadOnly Property DateTime() As [String] Get Return _parent.DateTime End Get End Property End Class 'VB_FirstTemplateContainer End Namespace 'CustomControls
using System; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Collections; namespace Samples.AspNet.CS.Controls { [ParseChildren(true)] public class TemplatedFirstControl : Control, INamingContainer { private ITemplate firstTemplate; private String text = null; private Control myTemplateContainer; [System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name = "FullTrust")] protected override void OnDataBinding(EventArgs e) { EnsureChildControls(); base.OnDataBinding(e); } [TemplateContainer(typeof(FirstTemplateContainer))] public ITemplate FirstTemplate { get { return firstTemplate; } set { firstTemplate = value; } } public String Text { get { return text; } set { text = value; } } public String DateTime { get { return System.DateTime.Now.ToLongTimeString(); } } public Control MyTemplateContainer { get { return myTemplateContainer; } } [System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name = "FullTrust")] protected override void CreateChildControls() { if (FirstTemplate != null) { myTemplateContainer = new FirstTemplateContainer(this); FirstTemplate.InstantiateIn(myTemplateContainer); Controls.Add(myTemplateContainer); } else { Controls.Add(new LiteralControl(Text + " " + DateTime)); } } } public class FirstTemplateContainer : Control, INamingContainer { private TemplatedFirstControl parent; public FirstTemplateContainer(TemplatedFirstControl parent) { this.parent = parent; } public String Text { get { return parent.Text; } } public String DateTime { get { return parent.DateTime; } } } }
package Samples.AspNet.CS.Controls; /* File name:templatecontainerattribute.jsl. */ import System.*; import System.Web.*; import System.Web.UI.*; import System.Web.UI.WebControls.*; import System.Collections.*; /** @attribute ParseChildren(true) */ public class TemplatedFirstControl extends Control implements INamingContainer { private ITemplate firstTemplate; private String text = null; private Control myTemplateContainer; protected void OnDataBinding(EventArgs e) { EnsureChildControls(); super.OnDataBinding(e); } //OnDataBinding /** @attribute TemplateContainer(FirstTemplateContainer.class) */ /** @property */ public ITemplate get_FirstTemplate() { return firstTemplate; } //get_FirstTemplate /** @property */ public void set_FirstTemplate(ITemplate value) { firstTemplate = value; } //set_FirstTemplate /** @property */ public String get_Text() { return text; } //get_Text /** @property */ public void set_Text(String value) { text = value; } //set_Text /** @property */ public String get_DateTime() { return System.DateTime.get_Now().ToLongTimeString(); } //get_DateTime /** @property */ public Control get_MyTemplateContainer() { return myTemplateContainer; } //get_MyTemplateContainer protected void CreateChildControls() { if (get_FirstTemplate() != null) { myTemplateContainer = new FirstTemplateContainer(this); get_FirstTemplate().InstantiateIn(myTemplateContainer); get_Controls().Add(myTemplateContainer); } else { get_Controls().Add(new LiteralControl(get_Text() + " " + DateTime.class)); } } //CreateChildControls } //TemplatedFirstControl public class FirstTemplateContainer extends Control implements INamingContainer { private TemplatedFirstControl parent; public FirstTemplateContainer(TemplatedFirstControl parent) { this.parent = parent; } //FirstTemplateContainer /** @property */ public String get_Text() { return parent.get_Text(); } //get_Text /** @property */ public String get_DateTime() { return parent.get_DateTime(); } //get_DateTime } //FirstTemplateContainer

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


TemplateContainerAttribute コンストラクタ

名前 | 説明 |
---|---|
TemplateContainerAttribute (Type) | コンテナの型を指定して、TemplateContainerAttribute クラスの新しいインスタンスを初期化します。 |
TemplateContainerAttribute (Type, BindingDirection) | 指定したコンテナの型と BindingDirection プロパティを使用して、TemplateContainerAttribute クラスの新しいインスタンスを初期化します。 |

TemplateContainerAttribute コンストラクタ (Type, BindingDirection)
アセンブリ: System.Web (system.web.dll 内)

Dim containerType As Type Dim bindingDirection As BindingDirection Dim instance As New TemplateContainerAttribute(containerType, bindingDirection)
public function TemplateContainerAttribute ( containerType : Type, bindingDirection : BindingDirection )
- containerType
- bindingDirection
コンテナ コントロールの BindingDirection。

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- TemplateContainerAttribute コンストラクタのページへのリンク