void ControlTreeDataLoader.LoadData()
        {
            CssClass =
                CssClass.ConcatenateWithSpace(
                    allStylesBothStatesClass + " " +
                    ( style == SectionStyle.Normal ? getSectionClass( normalClosedClass, normalExpandedClass ) : getSectionClass( boxClosedClass, boxExpandedClass ) ) );

            if( heading.Any() ) {
                var headingControls =
                    new WebControl( HtmlTextWriterTag.H1 ) { CssClass = headingClass }.AddControlsReturnThis( heading.GetLiteralControl() )
                        .ToSingleElementArray()
                        .Concat( postHeadingControls );
                if( expanded.HasValue ) {
                    var toggleClasses = style == SectionStyle.Normal ? new[] { normalClosedClass, normalExpandedClass } : new[] { boxClosedClass, boxExpandedClass };

                    var headingContainer =
                        new Block(
                            new[] { new EwfLabel { Text = "Click to Expand", CssClass = closeClass }, new EwfLabel { Text = "Click to Close", CssClass = expandClass } }.Concat(
                                headingControls ).ToArray() ) { CssClass = headingClass };
                    var actionControlStyle = new CustomActionControlStyle( c => c.AddControlsReturnThis( headingContainer ) );

                    this.AddControlsReturnThis(
                        disableStatePersistence
                            ? new CustomButton( () => "$( '#" + ClientID + "' ).toggleClass( '" + StringTools.ConcatenateWithDelimiter( " ", toggleClasses ) + "', 200 )" )
                                {
                                    ActionControlStyle = actionControlStyle
                                }
                            : new ToggleButton( this.ToSingleElementArray(), actionControlStyle, toggleClasses: toggleClasses ) as Control );
                }
                else {
                    var headingContainer = new Block( headingControls.ToArray() ) { CssClass = headingClass };
                    this.AddControlsReturnThis( new Block( headingContainer ) );
                }
            }
            if( contentControls.Any() )
                this.AddControlsReturnThis( new Block( contentControls.ToArray() ) { CssClass = contentClass } );
        }