如何从WPF中的webbrowser控件获取document.text?
此控件在WPF中不再具有此属性。我查看过msdn文章,但没有任何关于它的内容。
另外,谷歌搜索这个没有给我在WPF中的这个控件的任何结果
答案 0 :(得分:3)
浏览器完成导航后,您可以调用这样的方法......
public static void GetPageContent(WebBrowser wb, string fileName)
{
mshtml.HTMLDocumentClass dom = (mshtml.HTMLDocumentClass)wb.Document;
Task t = new Task(() => File.WriteAllText(fileName, dom.body.innerHTML));
t.Start();
}
此方法将整个页面放入标准ASCII文件中,您可以根据需要解析内容。
要使用此方法,您需要包含对Microsoft.mshtml程序集的引用,该程序集应位于“添加引用”对话框的.NET选项卡中。如图所示,我产生了一个单独的线程以保持UI的活泼,但这是可选的。
对于您只想将字符串返回给客户端的情况,您可以使用此方法...
public static string GetPageContent(WebBrowser wb)
{
return ((mshtml.HTMLDocumentClass) wb.Document).body.innerHTML;
}