简单来说,就是在c#客户端winform中加载一个webBrowser1,然后通过webBrowser1中对页面的点击js效果触发c#的函数响应。亲测通过。
C#代码如下:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace testJS
{
[System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name = "FullTrust")]
[System.Runtime.InteropServices.ComVisibleAttribute(true)]
public partial class Form1 : Form
{
public void say()
{
MessageBox.Show("OK");
}
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
this.webBrowser1.ObjectForScripting = this;
this.webBrowser1.Navigate("http://localhost/1.html");
}
}
}
js代码如下:
<script>
function say()
{
var tnum=window.external.say();//getDebugPath()为c#方法
}
</script>
hi
<input type="button" value="OK" onclick="say()">
测试可以输出