在webbrowser控件中查找文本

时间:2010-10-20 15:23:21

标签: c# winforms webbrowser-control

我有一个网页浏览器控件,已经导航到一个页面。现在我想在页面中搜索特定文本,并滚动到第一个匹配项。

能够滚动到其他事件是一个额外的好处。

4 个答案:

答案 0 :(得分:1)

您可以尝试以下代码:

webBrowser1.Select(); SendKeys.Send( “^ F”);

答案 1 :(得分:0)

我不知道它是否适用于WebBroswer。我们使用以下代码将broswer(IE / FF / etc)窗口滚动到某些文本:

//source code of http://www.sample.com/sample.html
<html>
...
<span name="aim">KeyWord</span>
...
</html>

如果我希望窗口滚动到“KeyWord”,只需访问http://www.sample.com/sample.html#aim

使用string document = myWebBrowser.DocumentText获取页面的源代码,并搜索字符串中的文本,获取其节点名称,并使用#进行导航。

答案 2 :(得分:0)

如果有帮助,请看这个:

string PageSource = null;
PageSource = WebBrowser1.Document.Body.InnerHtml();
if (Strings.InStr(PageSource, stringtoFind) > 0) {
  ...insert an Anchor tag here and then use 
   WebBrowser1.Navigate to go to the the new URL with the #Anchor tag
} else {
...whatever else
}

答案 3 :(得分:0)

单程......

使用Ctrl + F密钥调用WebBrowser控件原生的Find