首页 > 代码库 > winform 与 html 交互 简单案例
winform 与 html 交互 简单案例
本文主要简单的记录winform如何与html文件中的信息如何进行交互,即在winform中加载html界面,从而可以进行相互调用。
1.新建一个winform项目,若要在winform中加载html,需要一个webBrowser控件。
2.新建一个html页面,这里命名为“test.htm”.
3.c#代码:
//为了使网页能够与winform交互 将com的可访问性设置为真 [System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name = "FullTrust")] [System.Runtime.InteropServices.ComVisibleAttribute(true)]public void Hello(){ MessageBox.Show("OK,html在调用wf中的函数");}private void Form1_Load(object sender, EventArgs e){ this.webBrowser1.ObjectForScripting = this; string path = Application.StartupPath + @"\test.htm"; //MessageBox.Show(path); //this.webBrowser1.Navigate(path); this.webBrowser1.Url = new System.Uri(path, System.UriKind.Absolute);}
4.html代码:
<html> <head> <title>this is a test</title> <script type ="text/javascript"> function Hello() { window.external.Hello();//getDebugPath()为c#方法 //alert("hello"); } </script> </head> <body> <button id="btn" onclick="Hello()">hello</button> </body></html>
5.结果:这里算是简单的完成了在winform中加载html,并在js中调用了c#中的信息。
6.为了方便,直接在上面的基础上实现在winform中调用html中的js函数。关键点:this.webBrowser1.Document.InvokeScript("js 的函数名", 参数");
7.c#代码:直接拖动一个button控件到页面中。
private void button1_Click(object sender, EventArgs e){ this.webBrowser1.Document.InvokeScript("WfToHtml");}
8.js代码:
<script type ="text/javascript"> function WfToHtml() { alert("wf调用html里面的js函数"); }</script>
9.结果:
初学者,内容也比较简单,准备再加载一个swf,哈哈。。。
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。