1

htmldocument写入后如何设置 url 。例如:

WebBrowser wb = new WebBrowser();
wb.Navigate(new Uri(location, UriKind.Absolute));
IHTMLDocument2 myDoc = new HTMLDocumentClass();
myDoc.write(new object[] { wb.DocumentText});
myDoc.close();

如果我这样做myDoc.url = "http://www.google.com",它会尝试加载谷歌。
如何在不尝试加载该 url 的情况下设置 url?

4

1 回答 1

0

这些步骤应该为您提供具有正确 URL 和您自己内容的文档:

  1. 直接从 URL 创建文档(因此您以后不必设置 URL)
  2. 停止文档下载(因为您不需要该内容)
  3. 用您的内容填写文档

这段代码显示了如何做到这一点:

// 1. Create new document from URL
IHTMLDocument2 NewDoc = (wb.Document as IHTMLDocument4).createDocumentFromUrl("http://www.stackoverflow.com", "null");
// 2. Immediately stop navigating; the URL is still set
NewDoc.execCommand("Stop", false, null);
// 3. Now write your stuff to the document
// ... 

注意:很难猜测在第 1 步和第 2 步之间可以下载多少内容,因为加载是异步进行的。因此,在执行步骤 3 之前检查文档是否确实为空可能会很好。如果不是,请清除文档并继续。

于 2011-11-21T10:50:58.930 回答