protected virtual void Dispose(bool disposing) { if (!_disposed) { if (disposing) { foreach (ControlRecord record in _controls) record.Unlink(); } _disposed = true; } }