如何在 webbrowser 控件中显示特定的 web 元素

How to show specific web element in webbrowser control

在应用程序中,我只想显示元素内网页的一个特定部分。

<div id="content"> 

我只想显示它在上面的 HTML 元素中。我如何使用 windows phone 8 中的 Web 浏览器控件实现此目的?

使用NavigateToString()方法从原始源中删除无用的HTML代码后显示网页的特定部分。

如果不能直接在网络服务器上过滤网页。 您可以在将完整网页加载到 Web 浏览器控件之后注入一些 javascript 代码来过滤 DOM,或者在使用 [=11 将过滤后的内容注入 Web 浏览器控件之前解析 HTML =] 方法,如 Fisher YoYo.

所示

由于 HTML 解析非常具有挑战性,您应该使用此方来完成此任务:Html Agility Pack

这是一个基于您的问题的示例:

static void Main(string[] args)
{
    HtmlAgilityPack.HtmlWeb web = new HtmlWeb();
    HtmlDocument document = web.Load("http://localhost/testAgilityPack.html");
    HtmlNode contentNode = document.DocumentNode.SelectSingleNode("//div[@id='content']");
    Console.WriteLine(contentNode.WriteTo());
    Console.ReadLine();
}

此代码段将提取属性 id 等于 contentdiv HTML 元素并将其导出到字符串中。