WeiranZhang.Metropaper.Controls.NewHtmlBlock.RenderHtml C# (CSharp) Method

RenderHtml() private method

private RenderHtml ( HtmlNode node, System.Windows.Documents.Paragraph paragraph, System.Windows.Documents.Span span ) : void
node HtmlAgilityPack.HtmlNode
paragraph System.Windows.Documents.Paragraph
span System.Windows.Documents.Span
return void
        private void RenderHtml(HtmlNode node, Paragraph paragraph, Span span)
        {
            switch (node.Name.ToLower())
            {
                case "p":
                    AppendSpan(node, paragraph, span, node.Name);
                    //AppendLineBreak(node, paragraph, span, false);
                    break;
                case "blockquote":
                    AppendSpan(node, paragraph, span, node.Name);
                    break;
                case "h1":
                case "h2":
                case "h3":
                    AppendSpan(node, paragraph, span, node.Name);
                    break;
                case "ul":
                    AppendSpan(node, paragraph, span, node.Name);
                    break;
                case "i":
                case "em":
                    AppendItalic(node, paragraph, span);
                    break;
                case "b":
                case "strong":
                    AppendBold(node, paragraph, span);
                    break;
                case "u":
                    AppendUnderline(node, paragraph, span);
                    break;
                case "#text":
                case "span":
                    AppendRun(node, paragraph, span);
                    break;
                case "a":
                    AppendHyperlink(node, paragraph, span);
                    break;
                case "li":
                    AppendRun(node, paragraph, span);
                    AppendSpan(node, paragraph, span, node.Name);
                    AppendLineBreak(node, paragraph, span, false);
                    break;
                case "br":
                    AppendLineBreak(node, paragraph, span, true);
                    break;
                case "image":
                case "img":
                    AppendImage(node, paragraph);
                    break;
                default:
                    Debug.WriteLine(String.Format("Element {0} not implemented", node.Name));
                    //foreach (var childNode in node.ChildNodes)
                    //{
                    //    RenderChildren(childNode, paragraph, span);
                    //}
                    break;
            }

            //foreach (var childNode in node.ChildNodes)
            //{
            //    AppendChildren(childNode, paragraph, span);
            //}
        }