Rock.Web.UI.Controls.CheckinAreaRow.RenderControl C# (CSharp) Method

RenderControl() public method

Writes the T:System.Web.UI.WebControls.CompositeControl content to the specified T:System.Web.UI.HtmlTextWriter object, for display on the client.
public RenderControl ( System.Web.UI.HtmlTextWriter writer ) : void
writer System.Web.UI.HtmlTextWriter An that represents the output stream to render HTML content on the client.
return void
        public override void RenderControl( HtmlTextWriter writer )
        {
            writer.AddAttribute( "data-key", _hfGroupTypeGuid.Value );
            writer.RenderBeginTag( HtmlTextWriterTag.Li );

            writer.AddAttribute( HtmlTextWriterAttribute.Class, string.Format( "checkin-item{0} checkin-area rollover-container", Selected ? " checkin-item-selected" : "" ) );
            writer.AddAttribute( HtmlTextWriterAttribute.Id, this.ID + "_section" );
            writer.RenderBeginTag( "section" );

            // Hidden Field to track expansion
            _hfExpanded.RenderControl( writer );

            writer.WriteLine( "<a class='checkin-area-reorder'><i class='fa fa-bars'></i></a>" );
            writer.WriteLine( "<a class='checkin-area-expand'><i class='checkin-area-state fa fa-folder-open'></i></a>" );

            _lblAreaRowName.RenderControl( writer );

            writer.AddAttribute( HtmlTextWriterAttribute.Class, "pull-right checkin-item-actions rollover-item" );
            writer.RenderBeginTag( HtmlTextWriterTag.Div );

            _lbAddArea.RenderControl( writer );
            writer.Write( " " );
            _lbAddGroup.RenderControl( writer );
            writer.Write( " " );
            _lblDeleteArea.RenderControl( writer );

            writer.RenderEndTag();  // Div
            writer.RenderEndTag();  // Section

            if ( !Expanded )
            {
                writer.AddStyleAttribute( "display", "none" );
            }
            writer.RenderBeginTag( HtmlTextWriterTag.Div );

            // Render child area rows
            var areaRows = this.Controls.OfType<CheckinAreaRow>();
            if ( areaRows.Any() )
            {
                writer.AddAttribute( HtmlTextWriterAttribute.Class, "checkin-list js-checkin-area-list" );
                writer.RenderBeginTag( HtmlTextWriterTag.Ul );
                foreach ( var areaRow in areaRows )
                {
                    areaRow.RenderControl( writer );
                }
                writer.RenderEndTag();
            }

            // Render child group rows
            var groupRows = this.Controls.OfType<CheckinGroupRow>();
            if ( groupRows.Any() )
            {
                writer.AddAttribute( HtmlTextWriterAttribute.Class, "checkin-list js-checkin-group-list" );
                writer.RenderBeginTag( HtmlTextWriterTag.Ul );
                foreach ( var groupRow in groupRows )
                {
                    groupRow.RenderControl( writer );
                }
                writer.RenderEndTag();
            }

            writer.RenderEndTag();  // Div

            writer.RenderEndTag();  // Li
        }