/// <summary>
        /// Removes the content control and keep contents.
        /// </summary>
        /// <param name="contentControl">The content control.</param>
        /// <param name="customXmlPartDocElement">The custom XML part doc element.</param>
        /// <returns>Returns the custom xml part document element list</returns>
        private IEnumerable<OpenXmlCompositeElement> RemoveContentControlAndKeepContents(SdtElement contentControl, XmlElement customXmlPartDocElement)
        {
            IList<OpenXmlCompositeElement> elementsList = new List<OpenXmlCompositeElement>();

            this.AssignContentFromCustomXmlPartForDataboundControl(contentControl, customXmlPartDocElement);

            foreach (var elem in GetSdtContentOfContentControl(contentControl).Elements())
            {
                var newElement = contentControl.Parent.InsertBefore(elem.CloneNode(true), contentControl);
                AddToListIfCompositeElement(elementsList, newElement);
            }

            contentControl.Remove();
            return elementsList;
        }