和Webbrowser进行简单交互

作为第一篇,简单的控件使用就不说了。

直接从简单的交互开始吧!

 

C#使用网页中已有的js函数

  webBrowser.Document.InvokeScript("Stop");//webbrowser是Webbrowser的名称,通过Document的方法的InvokeScipt直接启动。参数是js函数的名称

这个InvokeScript是拥有返回值的,可以接受网页js函数的返回值。

 

C#在网页中添加新的JS函数

在webbrowser中,也是可以实现。

基本思路是:

创建标签。

填充标签中需要填充的值

将标签添加到网页中

之后看情况是否启动。

                var SetNewHtml = webBrowser1.Document.CreateElement("script");//创建标签
                SetNewHtml.SetAttribute("text",@"function newFun(){alret('hello')}");//向标签内传值
                webBrowser1.Document.Body.AppendChild(SetNewHtml);//填充到网页的body的末尾

 

C#获取网页的标签

  var getIdHtml= webBrowser1.Document.Body.Document.GetElementById("标签的ID");

                //getIdHtml.InnerHtml 获取此标签的HTML
               //getIdHtml.InnerText 获取标签的值
//getIdHtml是一个HtmlElemnt类型
//标签的基本都可以通过这样子获取到

 

C#修改网页内容

同上,因为HtmlElemnt类型的方法和属性大部分都是get;set;的  所以可以获取 可以修改

    var getIdHtml= webBrowser1.Document.Body.Document.GetElementById("a");

                getIdHtml.InnerHtml = "<a>AAAABBBB</a>";

 或者是直接修改

 webBrowser1.Document.Body.Document.GetElementById("a").SetAttribute(“”,“”);

这个方法有两个参数,第一个是要设置参数的名字,第二个是参数的具体的值

 

C#直接使用网页上的标签的一些自身的属性

比如点击等

 webBrowser1.Document.Body.Document.GetElementById("a").InvokeMember("click");

 

posted @ 2018-08-01 20:22  ARM830  阅读(581)  评论(0编辑  收藏  举报