我有一個windows.Net Form
它包含一個WebBrowser
控制。
此WebBrowser
顯示基於其Url
屬性的網頁。
我可以修改WebBrowser
控件中顯示的頁面的DOM嗎?
如果是,如何?如何更新C#中的WebBrowser控件內的DOM內容?
回答
對於那些有興趣誰,這裏的解決方案:
HtmlElement headElement = webBrowser1.Document.GetElementsByTagName("head")[0];
HtmlElement scriptElement = webBrowser1.Document.CreateElement("script");
IHTMLScriptElement domScriptElement = (IHTMLScriptElement)scriptElement.DomElement;
domScriptElement.text = "function applyChanges(){/*DO WHATEVER YOU WANT HERE*/}";
headElement.AppendChild(scriptElement);
// Call the nextline whenever you want to execute your code
webBrowser1.Document.InvokeScript("applyChanges");
偉大的工作在這裏發佈您的解決方案!謝謝 – viniciushana 2012-03-27 18:21:10
從http://msdn.microsoft.com/pt-br/library/system.windows.forms.webbrowser.aspx:
您也可以通過文檔屬性,它包含的HTMLDocument對象,它提供對當前頁面管理訪問HTML文檔對象模型(DOM)操縱網頁內容。此屬性在與ObjectForScripting屬性結合使用時非常有用,可以在Web頁面中實現應用程序代碼和動態HTML(DHTML)代碼之間的雙向通信,從而使您可以將基於Web的控件和Windows窗體控件合併爲一個用戶界面。您可以使用Document屬性從您的應用程序調用腳本代碼方法。您的腳本代碼可以通過window.external對象訪問您的應用程序,該對象是爲主機訪問提供的內置DOM對象,並映射到您爲ObjectForScripting屬性指定的對象。
您能否以示例說明您的觀點? – Aakash 2013-07-23 06:25:11
在鏈接的末尾,你會發現一些例子。 – viniciushana 2013-07-23 11:58:30
- 1. 如何打印WebBrowser控件的內容?
- 2. 打印WebBrowser控件內容
- 3. 閱讀WebBrowser控件的內容
- 4. 訪問WP7 WebBrowser控件的HTML內容
- 5. 在C#中打印WebBrowser控件的內容#
- 6. DOM後的jQuery Slider/Carousel更新內容
- 7. 如何讓C#Winforms Webbrowser控件將嵌入在html文件中的PDF內容顯示爲二進制內容?
- 8. 將WebBrowser控件內容保存爲HTML
- 9. 更改WPF WebBrowser控件上的「活動內容」安全設置
- 10. 如何設置Webbrowser控件的內容類型?
- 11. 如何在webBrowser控件中獲取內容
- 12. 如何刷新Chrome擴展的內容腳本,如DOM更改
- 13. Silverlight中的Webbrowser控件不會刷新Adobe Reader 8和9中的pdf內容
- 14. 如何抓取內容通過JavaScript更新WebBrowser
- 15. 更新InfoBox內的內容
- 16. Ajax.BeginForm,用戶控件和更新內容
- 17. 如何防止Javascript更新整個控件,並刷新內容?
- 18. 如果在更新面板之外如何更新用戶控件的內容?
- 19. 打印C#中控件的內容?
- 20. 禁用WebBrowser控件中的活動內容
- 21. 在WebBrowser控件中檢測HTML內容的實際大小
- 22. ASP C#更新內容
- 23. 如何通過OpenXml SDK 2.0更改Word 2007中內容控件的內容?
- 24. 如何等待C#中的WebBrowser控件
- 25. 更新QMenu'live'中的內容
- 26. 打印WPF WebBrowser的內容
- 27. Chromium WebBrowser的內容模糊
- 28. 如何用PHP中的新內容覆蓋文件內容?
- 29. 我如何清除Angular2中的選擇器內的DOM內容
- 30. 如何修復IE WebBrowser控件中的內存泄漏?
這是可能的。 WebBrowser應該有一個名爲Document的屬性,您可以通過託管代碼上的htmldocument訪問html(http://msdn.microsoft.com/en-us/library/system.windows.forms.webbrowser.aspx) – MilkyWayJoe 2012-03-26 14:18:24
這裏是鏈接到我提到的特定屬性http://msdn.microsoft.com/en-us/library/system.windows.forms.webbrowser.document.aspx – MilkyWayJoe 2012-03-26 14:21:42
它是隻讀的(因爲我看到它只包含一個getter)? – 2012-03-26 15:23:05