我想实现 js调用 winform里面的方法,通过webbrower控件和winform进行交互。不知道怎么弄啊。
我在网上找了些资料,说的在js里面写 window.external.方法名();
但是没用啊,js报错。。。
this.webBrowser1.Url = new Uri(GetDefaultUrl());
C# code
using System;
using System.Windows.Forms;
using System.Threading;
using System.Runtime.InteropServices;
namespace WindowsFormsApplication1
{
[System.Runtime.InteropServices.ComVisibleAttribute(true)]
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
webBrowser1.ObjectForScripting = this;
}
public void Func(string str)
{
MessageBox.Show(str);
}
private void Form1_Load(object sender, EventArgs e)
{
webBrowser1.Navigate("about:blank");
webBrowser1.Document.Write("<script> function ButonClick() { window.external.Func('test');}</script><input type='button' onclick='ButonClick();'>test");
}
}
}
设置下面两个地方
C# code
[System.Runtime.InteropServices.ComVisibleAttribute(true)]
public partial class Form1 : Form
webBrowser1.ObjectForScripting = this;