c# winfrom 如何引用js 详细的 有注释的 我是新手

JavaScript023

c# winfrom 如何引用js 详细的 有注释的 我是新手,第1张

winform上嵌套WebBrowser控件,可以从c#代码里面调用该控件内html的js方法。

示例代码:

setLocation方法是browser控件内的html上的js方法名称,第二个参数是setLocation方法的入参。

this.browser.Document.InvokeScript("setLocation", new object[] { this._lng, this._lat })

如果你用的是 webbrowser 的话,可以执行js脚本,或者出发页面上的html控件的事件来达到目的:

我不知道你的应该,我列两个你参考一下吧

webBrowser1.Document.GetElementById("userid").InnerText = Account

webBrowser1.Document.GetElementById("password").InnerText = textBox2.Text

IHTMLDocument2 id2 = webBrowser1.Document.DomDocument as IHTMLDocument2

IHTMLWindow2 win = id2.parentWindow

win.execScript("CheckAndLogin()", "javascript")

或者执行按钮事件

webBrowser1.Document.GetElementById("card_number").InnerText = Account

webBrowser1.Document.GetElementById("card_password").InnerText = textBox2.Text

HtmlElement elemButton = webBrowser1.Document.GetElementById("select_order")

mshtml.HTMLInputElement button = (mshtml.HTMLInputElement)(elemButton.DomElement)

button.click()

在使用C#开发winform程序过程中,经常会碰到嵌入了一个WebBrowser的浏览器控件。很多时候,需要在程序里控制网页的显示方式,或者调用网页当中的某个JS函数,反过来,也有可能网页也需要调用程序当中的函数来实现某些功能。下面讲解下如何互相进行交互。

程序调用JS脚本如下:

<script language=”javascript”>

     function  ShopXG(infor)

     {

         alert(‘我要开网店、携购独立网店系统,模板最全,最专业的系统!’)

         return

     }

</script>

C#代码调用如下:

 using System.Security.Permissions 

 注意: 类定义前需要加上下面两行,否则调用失败!

 [PermissionSet(SecurityAction.Demand, Name = "FullTrust")]

 [System.Runtime.InteropServices.ComVisibleAttribute(true)]

调用的函数:

 webBrowser1.Document.InvokeScript("ShopXG ", new string[] {‘ssss’})

JS中调用C#函数示例:

 C#函数如下:

 public void ShowMessage(string message)

 {

          MessageBox.Show(“免费开网店,携购独立网店系统诚邀您的加盟!”)

 }

JS里的调用方法:

 <script language=”Javascript”>

 function  InvokeFunc()

 {

  window.external.ShowMessage(‘呵呵’)

 }

 </script>