public override void Visit(ExportList list, Action inner)
 {
     SetHorizontalAlignment(HorizontalAlign.Left);
     StartTag(HtmlTextWriterTag.Div);
         StartTag(HtmlTextWriterTag.Ul);
         inner();
         EndTag();
     EndTag();
 }
 public ExportList VisitList(HtmlTag list )
 {
     if(list.TagName().ToLower() != HtmlTagConstants.Ul )
     {
         throw new ArgumentException(string.Format("Expected tag to be a <{0}> tag, but was <{1}>", HtmlTagConstants.Ul,
                                               list.TagName()));
     }
     var exportList = new ExportList();
     list.Children.ForEach(f => VisitListItem(f, exportList));
     return exportList;
 }
        public void VisitListItem(HtmlTag list, ExportListItem exportList)
        {
            var item = new ExportListItem();
            if(list.TagName().ToLower() == HtmlTagConstants.Ul)
            {
                item = new ExportList();
            }

            list.Children.ForEach(f => VisitListItem(f, item));
            item.Text = ExportFromTable.HtmlTagRegex.Replace(list.Text(), String.Empty);

            exportList.AddItem(item);
        }
 public abstract void Visit(ExportList list, Action inner);
 public override void Visit(ExportList list, Action inner)
 {
     inner();
     StripTrailingSeparator();
     AppendRowDelimiter();
 }