private void AppendGroupIndicators(IHtmlNode div, GridGroupingData groupingData)
 {
     var groupDescriptors = groupingData.GroupDescriptors;
     
     foreach (var group in groupDescriptors)
     {
         AppendGroupIndicator(div, group, groupingData);
     }
 }
        private void AppendGroupIndicator(IHtmlNode div, GroupDescriptor group, GridGroupingData groupingData)
        {
            var groups = new List<GroupDescriptor>(groupingData.GroupDescriptors);

            var indicator = new HtmlElement("div").AddClass(UIPrimitives.Grid.GroupIndicator);

            indicator.AppendTo(div);

            AppendSortLink(indicator, group, groups, groupingData.UrlBuilder, groupingData.GetTitle, groupingData.SortedAscText, groupingData.SortedDescText);

            AppendUngroupButton(indicator, groupingData.UrlBuilder, groups, groupingData.UnGroupText);
        }
        public IHtmlNode CreateGroupHeader(GridGroupingData groupingData)
        {
            var div = new HtmlElement("div").AddClass("t-grouping-header");

            if (groupingData.GroupDescriptors.Any())
            {
                AppendGroupIndicators(div, groupingData);
            }
            else
            {
                AppendHint(div, groupingData);
            }
            
            return div;
        }
 public IHtmlNode CreateGroupHeader(GridGroupingData groupingData)
 {
     return groupHeaderBuilder.CreateGroupHeader(groupingData);
 }
 private void AppendHint(IHtmlNode div, GridGroupingData groupingData)
 {
     div.Html(groupingData.Hint);
 }