Rock.Web.UI.Controls.CheckinGroupRow.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", _hfGroupGuid.Value );
            writer.RenderBeginTag( HtmlTextWriterTag.Li );

            writer.AddAttribute( HtmlTextWriterAttribute.Class, string.Format( "checkin-item{0} checkin-group 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-group-reorder'><i class='fa fa-bars'></i></a>" );
            writer.WriteLine( "<a class='checkin-group-expand'><i class='checkin-group-state fa fa-check-circle'></i></a>" );

            _lblGroupRowName.RenderControl( writer );

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

            _lbAddGroup.RenderControl( writer );
            writer.Write( " " );
            _lblDeleteGroup.RenderControl( writer );

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

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

            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
        }