void ValidateState() { if (IsDisposed) throw new ObjectDisposedException(GetType().Name); if (!IsHandleCreated) CreateControl(); if (implementation == null || context == null || context.IsDisposed) RecreateHandle(); }