Edit

Share via


ListControlDataBindingHandler Class

Definition

Performs data binding of a ListControl Web server control within a visual designer.

public ref class ListControlDataBindingHandler : System::Web::UI::Design::DataBindingHandler
public class ListControlDataBindingHandler : System.Web.UI.Design.DataBindingHandler
type ListControlDataBindingHandler = class
    inherit DataBindingHandler
Public Class ListControlDataBindingHandler
Inherits DataBindingHandler
Inheritance
ListControlDataBindingHandler

Examples

This section contains two code examples. The first one demonstrates how to derive a control from the RadioButtonList control and associate it with its data binding handler. The second one demonstrates how to the derive a class from the ListControlDataBindingHandler class.

The following code example shows how to derive the SimpleRadioButtonList control from the RadioButtonList control, and then apply the DataBindingHandlerAttribute attribute to associate the SimpleRadioButtonList control with its data binding handler, the SimpleRadioButtonListDataBindingHandler class.

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
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
End Namespace ' Examples.VB.WebControls.Design

The following code example shows how to derive the SimpleRadioButtonListDataBindingHandler class from the ListControlDataBindingHandler class. It overrides the DataBindControl method to add a message to the associated SimpleRadioButtonList control when that control is data bound.

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
' Imports System.Design
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
    End Class
End Namespace ' Examples.VB.WebControls.Design

Remarks

The ListControlDataBindingHandler class performs design-time data binding of a ListControl control. The ListControlDataBindingHandler class is referenced by the ListControl using the DataBindingHandlerAttribute class.

The DataBindControl method performs the design-time data binding.

Constructors

ListControlDataBindingHandler()

Initializes a new instance of the ListControlDataBindingHandler class.

Methods

DataBindControl(IDesignerHost, Control)

Performs data binding on the specified control.

Equals(Object)

Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode()

Serves as the default hash function.

(Inherited from Object)
GetType()

Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone()

Creates a shallow copy of the current Object.

(Inherited from Object)
ToString()

Returns a string that represents the current object.

(Inherited from Object)

Applies to

See also