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

RenderBody() private method

private RenderBody ( HtmlNode node ) : void
node HtmlAgilityPack.HtmlNode
return void
        private void RenderBody(HtmlNode node)
        {
            foreach (var childNode in node.ChildNodes)
            {
                AddTextBox(childNode);
                AddParagraph();

                switch (childNode.Name.ToLower())
                {
                    case "p":
                    case "blockquote":
                    case "div":
                        RenderChildren(node, _currentParagraph, null);
                        break;
                    default:
                        RenderHtml(node, _currentParagraph, null);
                        break;
                }
            }
        }

Usage Example

示例#1
0
        private static void HtmlChanged(DependencyObject o, DependencyPropertyChangedEventArgs e)
        {
            NewHtmlBlock instance = (NewHtmlBlock)o;

            if (instance._itemsControl != null)
            {
                var html = new HtmlDocument();
                html.LoadHtml(e.NewValue.ToString());
                instance.RenderBody(html.DocumentNode);
            }
        }