和Webbrowser进行简单交互

Posted ARM830

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了和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");

 




以上是关于和Webbrowser进行简单交互的主要内容,如果未能解决你的问题,请参考以下文章

wpf的webbrowser与javascript交互

MFC与Webbrowser交互(通过JS)

C#中webbrowser与javascript(js)交互的方法

WinForm程序执行JS代码的多种方法以及使用WebBrowser与JS交互

WebBrowser 控件和 Windows 窗体之间的交互

如何使用 xcode 将快照划分为多个片段,以便让用户与每个片段进行交互?