Parameter.OnParameterChanged Method

Definition

Calls the OnParametersChanged(EventArgs) method of the ParameterCollection collection that contains the Parameter object.

C#
protected void OnParameterChanged ();

Examples

The following code example demonstrates how to call the OnParameterChanged method to raise the ParametersChanged event when the state of a parameter changes. This code example is part of a larger example provided for the Parameter class overview.

C#
// The Value property is a type safe convenience property
// used when the StaticParameter represents string data.
// It gets the string value of the DataValue property, and
// sets the DataValue property directly.
public string Value {
  get {
    object o = DataValue;
    if (o == null || !(o is string))
      return String.Empty;
    return (string)o;
  }
  set {
    DataValue = value;
    OnParameterChanged();
  }
}

Remarks

If the Parameter object is not contained by a ParameterCollection collection, calling the OnParameterChanged method has no effect. If the Parameter object is contained by a ParameterCollection collection, OnParameterChanged raises the ParameterCollection.ParametersChanged event of the collection.

If the ParameterCollection collection is contained by a data source control, the ParameterCollection.ParametersChanged event raises the data source control's DataSourceChanged event, causing any data-bound controls to rebind.

Raising an event invokes the event handler through a delegate. For more information, see Handling and Raising Events.

The OnParameterChanged 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 OnParameterChanged() in a derived class, be sure to call the base class's OnParameterChanged() method so that registered delegates receive the event.

Applies to

Product Versions
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1

See also