Additional methods for designing and managing controls.
        void ReplaceEditorControl(Control newControl, ControlHelper controlHelper) {
            if (controlHelper.LayoutControlItem != null) {
                Control oldControl = controlHelper.LayoutControlItem.Control;
                if (ReferenceEquals(newControl, oldControl))
                    return;

                bool enabled = newControl.Enabled;

                if (controlHelper.LayoutControlItem.Owner!=null)
                    controlHelper.LayoutControlItem.Owner.BeginUpdate();
                controlHelper.LayoutControlItem.BeginInit();

                controlHelper.LayoutControlItem.Control = newControl;
                if (oldControl != null) oldControl.Parent = null;

                controlHelper.LayoutControlItem.EndInit();
                if (controlHelper.LayoutControlItem.Owner != null)
                    controlHelper.LayoutControlItem.Owner.EndUpdate();

                controlHelper.LayoutControlItem.Control.Enabled = enabled;
            }
        }