ListControlDataBindingHandler クラス
アセンブリ: System.Design (system.design.dll 内)


ListControlDataBindingHandler クラスは、ListControl コントロールのデザイン時データ バインディングを実行します。ListControlDataBindingHandler クラスは、DataBindingHandlerAttribute クラスを使用して ListControl によって参照されます。
DataBindControl メソッドは、デザイン時データ バインディングを実行します。

このセクションには、2 つのコード例が含まれています。1 つ目のコード例では、RadioButtonList コントロールからコントロールを派生してデータ バインディング ハンドラに関連付ける例を示します。2 つ目のコード例では、ListControlDataBindingHandler クラスからクラスを派生する例を示します。
RadioButtonList コントロールから SimpleRadioButtonList コントロールを派生し、DataBindingHandlerAttribute 属性を適用して SimpleRadioButtonList コントロールをデータ バインディング ハンドラの SimpleRadioButtonListDataBindingHandler クラスに関連付ける方法を次のコード例に示します。
Imports System.Web Imports System.Web.UI Imports System.Web.UI.WebControls Imports System.ComponentModel Imports System.Security.Permissions Namespace Examples.VB.WebControls.Design ' The SimpleRadioButtonList is a copy of the RadioButtonList. ' It uses the SimpleRadioButtonListDesigner for design-time support. <AspNetHostingPermission(SecurityAction.Demand, _ Level:=AspNetHostingPermissionLevel.Minimal)> _ <AspNetHostingPermission(SecurityAction.InheritanceDemand, _ Level:=AspNetHostingPermissionLevel.Minimal)> _ <DesignerAttribute(GetType(Examples.VB.WebControls.Design. _ SimpleRadioButtonListDesigner))> _ <DataBindingHandler(GetType(Examples.VB.WebControls.Design. _ SimpleRadioButtonListDataBindingHandler))> _ Public Class SimpleRadioButtonList Inherits RadioButtonList End Class ' SimpleRadioButtonList End Namespace ' Examples.VB.WebControls.Design
using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.ComponentModel; using System.Security.Permissions; namespace Examples.CS.WebControls.Design { // The SimpleRadioButtonList is a copy of the RadioButtonList. // It uses the SimpleRadioButtonListDesigner for design-time support. [AspNetHostingPermission(SecurityAction.Demand, Level = AspNetHostingPermissionLevel.Minimal)] [AspNetHostingPermission(SecurityAction.InheritanceDemand, Level = AspNetHostingPermissionLevel.Minimal)] [Designer(typeof(Examples.CS.WebControls.Design. SimpleRadioButtonListDesigner))] [DataBindingHandler(typeof(Examples.CS.WebControls.Design. SimpleRadioButtonListDataBindingHandler))] public class SimpleRadioButtonList : RadioButtonList { } // SimpleRadioButtonList } // Examples.CS.WebControls.Design
ListControlDataBindingHandler クラスから SimpleRadioButtonListDataBindingHandler クラスを派生する方法を次のコード例に示します。このコードは、DataBindControl メソッドをオーバーライドして、このコントロールがデータ バインドされたときに関連付けられている SimpleRadioButtonList コントロールにメッセージを追加します。
' Imports System.Design Imports System Imports System.ComponentModel Imports System.ComponentModel.Design Imports System.Web.UI Imports System.Web.UI.Design.WebControls Namespace Examples.VB.WebControls.Design ' Derive the SimpleRadioButtonListDataBindingHandler. Public Class SimpleRadioButtonListDataBindingHandler Inherits ListControlDataBindingHandler ' Override the DataBindControl. Public Overrides Sub DataBindControl( _ ByVal designerHost As IDesignerHost, _ ByVal control As Control) ' Create a reference, named dataSourceBinding, ' to the control's DataSource binding. Dim dataSourceBinding As DataBinding _ = CType( _ control, _ IDataBindingsAccessor).DataBindings("DataSource") ' If the binding exists, create a reference to the ' list control, clear its ListItemCollection, and then add ' an item to the collection. If Not (dataSourceBinding Is Nothing) Then Dim simpleControl As SimpleRadioButtonList = _ CType(control, SimpleRadioButtonList) simpleControl.Items.Clear() simpleControl.Items.Add("Data-bound Radio Button.") End If End Sub ' DataBindControl End Class ' SimpleRadioButtonListDataBindingHandler End Namespace ' Examples.VB.WebControls.Design
using System; using System.ComponentModel; using System.ComponentModel.Design; using System.Web.UI; using System.Web.UI.Design.WebControls; namespace Examples.CS.WebControls.Design { // Derive the SimpleRadioButtonListDataBindingHandler. public class SimpleRadioButtonListDataBindingHandler : ListControlDataBindingHandler { // Override the DataBindControl. public override void DataBindControl(IDesignerHost designerHost, Control control) { // Create a reference, named dataSourceBinding, // to the control DataSource binding. DataBinding dataSourceBinding = ((IDataBindingsAccessor)control).DataBindings["DataSource"]; // If the binding exists, create a reference to the // list control, clear its ListItemCollection, and then add // an item to the collection. if (! (dataSourceBinding == null)) { SimpleRadioButtonList simpleControl = (SimpleRadioButtonList)control; simpleControl.Items.Clear(); simpleControl.Items.Add("Data-bound Radio Button."); } } // DataBindControl } // SimpleRadioButtonListDataBindingHandler } // Examples.CS.WebControls.Design

- SecurityPermission (アンマネージ コードを呼び出すために必要なアクセス許可)。要求値 : Demand。アクセス許可値 : UnmanagedCode。

System.Web.UI.Design.DataBindingHandler
System.Web.UI.Design.WebControls.ListControlDataBindingHandler


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 によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- ListControlDataBindingHandler クラスのページへのリンク