2013-01-07 41 views
1

我正在开发简单的应用程序,我想要在电脑上点击并显示网页,但我不想显示包含菜单,徽标图像的标题div内容。wp7我如何隐藏或删除网页的标题div

为我能通话和

我的C#代码ID

private void image_Tap(object sender, GestureEventArgs e) 
    { 
     webBrowser1.Navigate(new Uri("http://www.my-url.com", UriKind.Absolute)); 
    } 

工作正常显示使用Web浏览器控件网页。

现在我该如何删除标题标签数据(内容在b/w <标题> </header> divs中)。

在此先感谢

+0

来自给定url的预期内容类型。如果它只是图片(jpg,png,gif),则使用直接图片的网址。 – aifarfa

+0

感谢您的快速回放,我想要显示除标题标签内容 – kartheek

回答

2

Web浏览器控件只是加载您传递给它的HTML文档。如果文档不在您自己的服务器上,则没有直接的方法来操作此HTML。一个非常原始的方法是解析HTML文档,然后在<header>...</header>上执行搜索/替换<!--<header>..</header>-->
您可以使用WebBrowser.SaveToString方法将HTML文档源保存为字符串。对于C#中的HTML解析,我会建议HTML Agility Pack。也看看What is the best way to parse html in C#?Parsing HTML String

+0

以外的总页数。我是新来的wp7我如何解析Html文件 – kartheek

+0

编辑原始答案包括解决方案:) – prthrokz

+0

或有任何其他方式来做到这一点通过使用Java脚本 – kartheek

1

如果你想用JavaScript来做到这一点:

document.getElementsByTagName('header')[0].style.display = 'none';

+0

谢谢你的答我知道在JS :),但如何在我的WP7应用程序中调用这个Java脚本 – kartheek

+0

检查他们的文档。 –

1

Windows Phone中的WebBrwoserControl使得它从URL中获取的HTML。

您可以一旦HTML呈现执行JavaScript代码(从您的C#代码)操纵呈现的DOM/HTML - 在您的情况下删除HTML标记。你所要做的就是使用InvokeScript。

假设您想在按下Windows Phone应用程序中的按钮时执行一些代码。该按钮单击事件的事件处理程序是Button1_Click,执行代码的代码如下。

private void Button1_Click(object sender, RoutedEventArgs e) 
{ 
    object results = WB1.InvokeScript("HideElement", new string[] { "hideElement" }); 
} 

所有你现在需要做的就是添加一个名为“HideElement”到你的页面的功能,您从www.my-url.com加载和你设置。当InvokeScript调用该函数时,单击该按钮时。只是要清楚:javscript-function需要位于您加载的网页所来自的Web服务器上。