Form+HTML 界面

Form+HTML 界面

ID:37239529

大小:48.08 KB

页数:11页

时间:2019-05-20

Form+HTML 界面_第1页
Form+HTML 界面_第2页
Form+HTML 界面_第3页
Form+HTML 界面_第4页
Form+HTML 界面_第5页
资源描述:

《Form+HTML 界面》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、窗口与WebBrowser控件相结合开发程序界面byskyfrog2011/5/8补C#Windows应用程序与JavaScript交互使用WinformWebBrowser控件对访问页面执行、改写、添加Javascript代码,可以解决许多问题,实现你想要的效果。1.在Form上添加Webbrowser控件,然后再Form类上添加COM可访问属性://设置如下属性让COM可访问(网页文件需要)[System.Runtime.InteropServices.ComVisibleAttribute(true)]2.初始化WebBrowser的Url与ObjectForScript

2、ing两个属性。privatevoidInitializeWebBrowser(){//设置URLstringpath=Application.StartupPath+"\TOC.html";if(File.Exists(path)){webBrowser1.Url=newUri(path);m_Ready=true;}elsewebBrowser1.Url=newUri("about:blank");//如果TOC文件不存在//设置脚本调用对象webBrowser1.ObjectForScripting=this;}Url属性:WebBrowser控件显示的网页路径Obje

3、ctForScripting属性:该对象可由显示在WebBrowser控件中的网页所包含的脚本代码访问。3.在C#中调用Javascript方法通过WebBrowser类的Document属性中的InvokeScript方法调用当前网页的Javascript方法。代码示例如下:webBrowser1.Document.InvokeScript("AppendLayer",newobject[1]{layerNameStr});其中,"AppendLayer"是网页中的javascript方法名称,object数组是其参数。4.在Javascript中调用C#方法JavaScri

4、pt通过window.external调用C#公开的方法。即由ObjectForScripting属性设置的类的实例中所包含的公共方法。代码示例如下:window.external.RemoveLayer(index);实现Form与页面的交互 HtmlDocument htmlDoc = webBrowser1.Document;//得到webBrowser1控件中页面的所有文档            HtmlElement btnElement = htmlDoc.All["btnClose"];//在文档中找到需要和form交互的元素            if (btn

5、Element != null)            {                btnElement.Click += new HtmlElementEventHandler(HtmlBtnClose_Click);//给这个元素Click事件(元素为Button)加上EventHandler(委托方法名)            }             WebBrowser控件说明使用WebBrowser控件还可以显示在应用程序中创建的内容或从数据库或资源文件检索的内容。使用DocumentText或DocumentStream属性,以字符串或数据流的形式获取或设

6、置当前文档的内容。还可以通过Document属性操作网页的内容,该属性包含一个HtmlDocument对象,向当前页提供对HTML文档对象模型(DOM)的托管访问。该属性与ObjectForScripting属性组合使用时,对在应用程序代码与网页中的动态HTML(DHTML)代码之间实现双向通信十分有用,使用它可以在单个用户界面中组合基于Web的控件和Windows窗体控件。在应用程序中可以使用Document属性调用脚本代码方法。脚本代码可以通过window.external对象访问应用程序,该对象是用于主机访问的内置DOM对象,它映射到为ObjectForScripting

7、属性指定的对象。TheWebBrowsercontrolisamanagedwrapperfortheActiveXWebBrowsercontrol,anduseswhicheverversionofthecontrolisinstalledontheuser'scomputer.注意:WebBrowser控件会占用大量资源。使用完该控件后一定要调用Dispose方法,以便确保及时释放所有资源。必须在附加事件的同一线程上调用Dispose方法,该线程应始终是消息或用户界面(UI)线程。注意

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

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

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