.NET Framework 4.6 and 4.5
When overridden in a derived class, performs additional work before the Remove or RemoveAt method removes the specified item from the collection.
protected virtual void OnRemove(
Collections derived from StateManagedCollection can override the OnRemove method to perform any additional work before an item is removed from the collection using the Remove or RemoveAt method.
Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0