设置WebBrowser.DocumentText而不导航到about:blank

时间:2017-05-10 16:17:54

标签: c# winforms browser

  

设置此属性时,WebBrowser控件会在加载指定文本之前自动导航到about:blank URL。这意味着当您设置此属性时会发生Navigating,Navigated和DocumentCompleted事件,并且Url属性的值不再有意义。

https://msdn.microsoft.com/en-us/library/system.windows.forms.webbrowser.documenttext(v=vs.110).aspx

假设我首先要使用加载本地.html文件 Browser.Url = new Uri(some filePath.html);

此HTML文件包含<script src="../Content/Scripts/ThisView.js"></script>

等链接

这很有效。因为Url已设置。

然后我想使用HtmlAgilityPack或w / e操作文档并使用DocumentText setter加载新内容,而不会丢失Browser.Url(因此脚本链接等将被破坏)。

有没有办法解决这个问题,还是我必须在文档中编制链接?

1 个答案:

答案 0 :(得分:0)

您可以通过与加载到WebBrowser控件中的页面的文档对象模型进行交互来完成此操作,而不是替换整个DocumentText(它会导航)。

查看WebBrowser.Document属性:https://msdn.microsoft.com/en-us/library/system.windows.forms.webbrowser.document(v=vs.110).aspx

类似的东西:

webBrowser1.Document.Body.InnerText = "hello, world!";

请注意,这需要您首先确保浏览器已完成导航到您的&#34;开始&#34;页。