protected virtual void Dispose(bool disposing) { if (disposing) { lock (this) { if (this.Site != null && this.Site.Container != null) this.Site.Container.Remove(this); if (this.Disposed != null) this.Disposed(this, EventArgs.Empty); } } }