阿里妈妈,帮你实现网络赚钱梦,流量变成现金!
10-12
14

在WebBrowser中通过JS调用C#方法

给力技术 - 给您提供最新最全的Web资源
      在Winform程序中,通过WebBrowser控件可以让Javascript 和 C#进行交互。要让JS调用C#方法,需要在类上设置ComVisible,然后还要设置WebBrowser的ObjectForScripting属性。
      JS中调用只需使用:window.external.方法名

      具体代码如下:
using System.Runtime.InteropServices;
using System.Windows.Forms;

namespace Lwolf
{
    public partial class Form1 : Form
    {
        //此类必须对 COM 可见,才能从Javascript中调用。
        [ComVisible(true)]
        public class ScriptManager
        {
            public ScriptManager()
            {
            }

            //此方法可在JS中调用
            public void CallFromJS(string message)
            {
                MessageBox.Show(message);
            }
        }

        public Form1()
        {
            InitializeComponent();

            webBrowser1.ObjectForScripting = new ScriptManager();

            webBrowser1.DocumentText = @"<html>
                <head>
                    <title>Test</title>
                </head>
                <body>
                <input type=""button"" value=""点击"" onclick=""window.external.CallFromJS('TEST');"" />
                </body>
                </html>";
        }
    }
}


其它关于Webbrowser的文章:
http://www.lwolf.cn/blog/article/code/csharp-web-js.htm
http://www.lwolf.cn/blog/article/code/webbrowser-winform.htm

文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
文章标签: winform c# webbrowser JS
网摘收录:
相关日志:
error
回复回复error[2011-10-12 09:05 PM | | | del]
请问如何在Webbrowser中加载本地的一个js,然后调用js中的函数呢?判回复
发表评论
昵 称:
密 码: 游客发言不需要密码.
邮 箱: 支持Gravatar头像.
网 址: 输入网址便于回访.
内 容:
验证码:
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.