Javascript和Winform代码之间实现双向通信

Javascript和Winform代码之间实现双向通信

ID:38183896

大小:19.84 KB

页数:5页

时间:2019-05-24

Javascript和Winform代码之间实现双向通信_第1页
Javascript和Winform代码之间实现双向通信_第2页
Javascript和Winform代码之间实现双向通信_第3页
Javascript和Winform代码之间实现双向通信_第4页
Javascript和Winform代码之间实现双向通信_第5页
资源描述:

《Javascript和Winform代码之间实现双向通信》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、js和winform 双向通信 最近工作需要,学习了一下winform内嵌webbrowser控件,然后与htm页面中的javascript交互调用的技术,因此有了这篇心得。总的来说,javascript与winform的code互相调用,和web开发中javascript与服务器端代码通过ajax互相调用有类似之处。下面就用三个例子来说明:一.将WebBrowser控件放置在winform中,然后,写一个Page1.htm,内容如下:1.

2、">2.3.4.  5.        6.            functiontest(message)7.            {8.                alert(message);9.            }10.        11.12.13.Button

3、utton>14.15.复制代码我将此Page1.htm显示在WebBrowser中看看,这个不难写,在winform中加上下面一句即可。webBrowser1.Url=newUri("C:\workspace\WindowsFormsApp\WindowsFormsApp\Page1.htm");然后运行,在winform中的webbrowser显示出来这个htm了,点按钮调用javascript函数,弹出alert提示,一切都很正常,没什么稀奇。二.如果我把javascript中的函数挪到winform的c

4、s代码里,htm页面还能调用的到吗?这有点ajax的味道了,在客户端的javascript里如何调用webpage.aspx.cs里的代码,在ajaxpro那时候,是需要在webpage.aspx.cs的代码里注册一下本页供ajax使用,在函数前也要声明一下是ajax函数的。再说回来,如果想调用winform中的代码,也类似的,要给winform设置一下ComVisibleAttribute(true),并给webbrowser控件设置一下webBrowser1.ObjectForScripting属性。1.webBrowser1.Url=new

5、Uri("C:\workspace\WindowsFormsApp\WindowsFormsApp\Page1.htm");2.webBrowser1.ObjectForScripting=this;复制代码其实,如果做的好,可以把这些代码专门归入一个类中,方便管理,这里就变为:webBrowser1.ObjectForScripting=new某类()了;然后,再在winform里写一个函数。        1.publicvoidTest(Stringmessage)2.{3.            MessageBox.Show(m

6、essage,"clientcode");4.}复制代码最后,htm里调用时要用window.external前缀一下Test方法名。1.Button复制代码然后再运行,就发现,htm里的onclick事件,居然能调用winform里的code了,真是神奇!完整winform代码如下:1.usingSystem;2.usingSystem.Windows.Forms;3.usingSystem.S

7、ecurity.Permissions;4.  5.namespaceWindowsFormsApp6.{7.    [PermissionSet(SecurityAction.Demand,Name="FullTrust")]8.    [System.Runtime.InteropServices.ComVisibleAttribute(true)]9.    publicpartialclassForm2:Form10.    {11.        privateWebBrowserwebBrowser1=newWebBrowser();

8、12.        publicForm2()13.        {14.            InitializeCompone

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。