Export (0) Print
Expand All

BaseDataBoundControl.OnDataBound Method

Raises the DataBound event.

Namespace:  System.Web.UI.WebControls
Assembly:  System.Web (in System.Web.dll)

protected virtual void OnDataBound(
	EventArgs e
)

Parameters

e
Type: System.EventArgs

An EventArgs object that contains the event data.

This method notifies a server control that any data binding logic associated with the control has completed.

Important noteImportant

The DataBind method is sealed on all controls derived from BaseDataBoundControl. Data-bound controls should override PerformDataBinding instead of the DataBind method to bind data. If DataBind is overridden, the OnDataBinding and OnDataBound events are raised out of order.

Raising an event invokes the event handler through a delegate. For more information, see Raising an Event.

The OnDataBound method also allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class.

Notes to Inheritors

When overriding OnDataBound in a derived class, be sure to call the base class’s OnDataBound method so that registered delegates receive the event.

The following code example demonstrates how the OnDataBound method is used to raise the DataBound event by a derived data-bound control class. After using the GetData and PerformDataBinding methods to bind data to the control, the data-bound control raises the DataBound event to signal that data binding is complete. This code example is part of a larger example provided for the DataBoundControl class.

protected override void PerformSelect() {            

   // Call OnDataBinding here if bound to a data source using the 
   // DataSource property (instead of a DataSourceID), because the 
   // databinding statement is evaluated before the call to GetData.        
    if (! IsBoundUsingDataSourceID) {
        OnDataBinding(EventArgs.Empty);
    }            

    // The GetData method retrieves the DataSourceView object from   
    // the IDataSource associated with the data-bound control.            
    GetData().Select(CreateDataSourceSelectArguments(), 
        OnDataSourceViewSelectCallback);

    // The PerformDataBinding method has completed.
    RequiresDataBinding = false;
    MarkAsDataBound();

    // Raise the DataBound event.
    OnDataBound(EventArgs.Empty);
}

.NET Framework

Supported in: 4.5, 4, 3.5, 3.0, 2.0

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Show:
© 2014 Microsoft