2013-01-07 65 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服務器上。