CollectionBase.OnSetComplete(Int32, Object, Object) Method

Definition

Performs additional custom processes after setting a value in the CollectionBase instance.

protected:
 virtual void OnSetComplete(int index, System::Object ^ oldValue, System::Object ^ newValue);
protected virtual void OnSetComplete (int index, object oldValue, object newValue);
protected virtual void OnSetComplete (int index, object? oldValue, object? newValue);
abstract member OnSetComplete : int * obj * obj -> unit
override this.OnSetComplete : int * obj * obj -> unit
Protected Overridable Sub OnSetComplete (index As Integer, oldValue As Object, newValue As Object)

Parameters

index
Int32

The zero-based index at which oldValue can be found.

oldValue
Object

The value to replace with newValue.

newValue
Object

The new value of the element at index.

Remarks

The default implementation of this method is intended to be overridden by a derived class to perform some action after the specified element is set.

The On* methods are invoked only on the instance returned by the List property, but not on the instance returned by the InnerList property.

The collection reverts back to its previous state if one of the following occurs:

  • The process fails.

  • This method is overridden to throw an exception.

The default implementation of this method is an O(1) operation.

Notes to Inheritors

This method allows implementers to define processes that must be performed after setting the specified element in the underlying ArrayList. By defining this method, implementers can add functionality to inherited methods without having to override all other methods.

OnSet(Int32, Object, Object) is invoked before the standard Set behavior, whereas OnSetComplete(Int32, Object, Object) is invoked after the standard Set behavior.

Applies to

See also