protected override void Dispose(bool disposing) { try { if (disposing) { // Unhook from events _ribbonButton.DesignTimeContextMenu -= new MouseEventHandler(OnContextMenu); _changeService.ComponentChanged -= new ComponentChangedEventHandler(OnComponentChanged); } } finally { // Must let base class do standard stuff base.Dispose(disposing); } }