protected virtual void Dispose(bool disposing) { if (disposing) { if (_sliceSets != null) { _sliceSets.ItemAdded -= OnItemAdded; _sliceSets.ItemChanged -= OnItemAdded; _sliceSets.ItemChanging -= OnItemRemoved; _sliceSets.ItemRemoved -= OnItemRemoved; _sliceSets.Dispose(); _sliceSets = null; } if (_volume != null) { _volume.Dispose(); _volume = null; } } }