找传奇、传世资源到传世资源站!

在网页中用javascript 调用winform方法的两种方式

8.5玩家评分(1人评分)
下载后可评
介绍 评论 失效链接反馈

在网页中用javascript 调用winform方法的两种方式 C#语言基础-第1张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;using System.Security.Permissions;namespace BrowserInForm{ [PermissionSet(SecurityAction.Demand, Name = "FullTrust")] [System.Runtime.InteropServices.ComVisibleAttribute(true)] public partial class Main : Form { private WebBrowser webBrowser1 = new WebBrowser(); private Button button1 = new Button(); public Main() { button1.Text = "通过InvokeScript间接调用winform方法"; button1.Dock = DockStyle.Top; button1.Click = new EventHandler(button1_Click); webBrowser1.Dock = DockStyle.Fill; Controls.Add(webBrowser1); Controls.Add(button1); Load = new EventHandler(Form1_Load); } private void Form1_Load(object sender, EventArgs e) { webBrowser1.AllowWebBrowserDrop = false; webBrowser1.IsWebBrowserContextMenuEnabled = false; webBrowser1.WebBrowserShortcutsEnabled = false; webBrowser1.ObjectForScripting = this; // Uncomment the following line when you are finished debugging. //webBrowser1.ScriptErrorsSuppressed = true; webBrowser1.DocumentText = "<html><head><script>" "function test(message) { alert(message); }" "</script></head><body><button " "onclick=\"window.external.Test('这是winform方法执行的结果(来自网页)')\">" "在网页中直接调用winform方法</button>" "</body></html>"; } public void Test(String message) { MessageBox.Show(message, "client code"); } private void button1_Click(object sender, EventArgs e) { webBrowser1.Document.InvokeScript("test", new String[] { "这是通过InvokeScript间接调用winform方法" }); } }}

评论

发表评论必须先登陆, 您可以 登陆 或者 注册新账号 !


在线咨询: 问题反馈
客服QQ:174666394

有问题请留言,看到后及时答复