- 17
- 0
- 约1.55万字
- 约 11页
- 2017-06-04 发布于河南
- 举报
FormHTML界面
窗口与WebBrowser控件相结合开发程序界面
by skyfrog 2011/5/8 补
C# Windows应用程序与JavaScript交互
使用Winform WebBrowser控件对访问页面执行、改写、添加Javascript代码,可以解决许多问题,实现你想要的效果。
1. 在Form上添加Webbrowser控件,然后再Form类上添加COM可访问属性:
//设置如下属性让COM可访问(网页文件需要)
[System.Runtime.InteropServices.ComVisibleAttribute(true)]
2. 初始化WebBrowser的Url与ObjectForScripting两个属性。
private void InitializeWebBrowser()
{
//设置URL
string path = Application.StartupPath + \\TOC.html;
if (File.Exists(path))
{
webBrowser1.Url = new Uri(path);
m_Ready = true;
}
else
webBrowser1.Url = new Uri(about:blank); //如果TOC文件不存在
//设置脚本调用对象
webBrowser1.ObjectForScripting = this;
}
Url属性:WebBrowser控件显示的网页路径
ObjectForScripting属性:该对象可由显示在WebBrowser控件中的网页所包含的脚本代码访问。
3. 在C#中调用Javascript方法
通过WebBrowser类的Document属性中的InvokeScript方法调用当前网页的Javascript方法。代码示例如下:
webBrowser1.Document.InvokeScript(AppendLayer, new object[1] { layerNameStr });
其中,AppendLayer是网页中的javascript方法名称,object数组是其参数。
4. 在Javascript中调用C#方法
JavaScript通过window.external调用C#公开的方法。即由ObjectForScripting属性设置的类的实例中所包含的公共方法。代码示例如下:
window.external.RemoveLayer(index);
实现Form与页面的交互
HtmlDocument htmlDoc = webBrowser1.Document;//得到webBrowser1控件中页面的所有文档 HtmlElement btnElement = htmlDoc.All[btnClose];//在文档中找到需要和form交互的元素 if (btnElement != null) { btnElement.Click += new HtmlElementEventHandler(HtmlBtnClose_Click);//给这个元素Click事件(元素为Button)加上EventHandler(委托方法名) }
WebBrowser控件说明
使用 WebBrowser 控件还可以显示在应用程序中创建的内容或从数据库或资源文件检索的内容。 使用 DocumentText 或 DocumentStream 属性,以字符串或数据流的形式获取或设置当前文档的内容。
还可以通过 Document 属性操作网页的内容,该属性包含一个 HtmlDocument 对象,向当前页提供对 HTML 文档对象模型 (DOM) 的托管访问。 该属性与 ObjectForScripting 属性组合使用时,对在应用程序代码与网页中的动态 HTML (DHTML) 代码之间实现双向通信十分有用,使用它可以在单个用户界面中组合基于 Web 的控件和 Windows 窗体控件。 在应用程序中可以使用 Document 属性调用脚本代码方法。 脚本代码可以通过 window.external 对象访问应用程序,该对象是用于主机访问的内置 DOM 对象,它映射到为
您可能关注的文档
- BPMN规范简介.doc
- bpmf课件1.ppt
- BZJ 351-2009 耐热结构用热连轧钢板及钢带.pdf
- break free歌词.doc
- B_样条小波在表面粗糙度评定中的应用.pdf
- C++ 基本数据类型.ppt
- BRT查询网.ppt
- C++程序设计课件(第2章)1.ppt
- C++程序设计课件(第1章).ppt
- B样条曲线在口腔修复体高速数控加工中的应用.pdf
- 小区绿化施工协议书.docx
- 墙面施工协议书.docx
- 1 古诗二首(课件)--2025-2026学年统编版语文二年级下册.pptx
- (2026春新版)部编版八年级道德与法治下册《3.1《公民基本权利》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《4.3《依法履行义务》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.2《按劳分配为主体、多种分配方式并存》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.1《公有制为主体、多种所有制经济共同发展》PPT课件.pptx
- 初三教学管理交流发言稿.docx
- 小学生课外阅读总结.docx
- 餐饮门店夜经济运营的社会责任报告(夜间贡献)撰写流程试题库及答案.doc
最近下载
- 四年级音乐下册欣赏《包粽子》《欢乐的夜晚》教案苏教版.pdf VIP
- 电镀加工项目可行性研究报告.docx VIP
- 第三单元第二章植物体内的物质与能量变化【速记清单】.docx
- 高大模板工程施工与支撑体系专项方案.docx VIP
- 春节后复工复产方案.doc VIP
- 中建协QC汇编_3-福州建工-提高大面积冷库墙体保温层施工质量——福州建工(集团)总公司.doc VIP
- Q SHB 0003-2016_全自动滚筒洗衣机玻璃观察窗.pdf VIP
- 电力工程安全协议书.doc VIP
- 2019年青海省中考数学试卷【原卷版】材料.pdf VIP
- AI驱动的组织重构与业务重构:绚星智慧科技AI实践白皮书.docx VIP
原创力文档

文档评论(0)