WPF下如何去除WebBrowser的滚动条和捕获关闭事件
方法一:适用于VS2008
1、在解决方案中添加“引用”
选择 COM 下的 Microsoft html object library
2、引入命名空间
using mshtml;
3、添加 WebBrowser 事件
在 WebBrowser 的 LoadCompleted 事件里
mshtml.HTMLDocumentClass dom = (mshtml.HTMLDocumentClass)webBrowserCygj.Document; //定义HTML
dom.documentElement.style.overflow = "hidden"; //隐藏浏览器的滚动条
dom.body.setAttribute("scroll", "no"); //禁用浏览器的滚动条
方法二:适用于VS2010
1、在解决方案中添加“引用”
选择 COM 下的 Microsoft html object library
2、引入命名空间
using mshtml;
3、添加 WebBrowser 事件
在 WebBrowser 的 LoadCompleted 事件里
mshtml.HTMLDocument dom = (mshtml.HTMLDocument)webBrowserCygj.Document; //定义HTML
dom.documentElement.style.overflow = "hidden"; //隐藏浏览器的滚动条
dom.body.setAttribute("scroll", "no"); //禁用浏览器的滚动条
注1:出于MS的某些原因,在VS2010下,HTMLDocumentClass 需更改为HTMLDocument 方可生效。
注2:通过页面代码控制浏览器窗口滚动条
overflow-y:hidden '表示没有垂直滚动条
overflow-x:hidden '表示没有水平滚动条
scroll:no或overflow-x:hidden;overflow-y:hidden或overflow:hidden '让浏览器窗口永远不出现滚动条
例:<BODY scroll="no">
注3:“隐藏浏览器的滚动条”和“禁用浏览器的滚动条”同时使用,方可实现对所有页面有效。
有点难描述说的是什么。大概就是下面这个图:窗体中嵌套一个Webbrowser,现在网页请求关闭
响应MessageHook事件:
this.webBrowser.MessageHook += webBrowser_MessageHook;
IntPtr webBrowser_MessageHook(IntPtr hwnd, int msg, IntPtr wParam, IntPtr lParam, ref bool handled)
{
if(msg == 130)
{
//do something
}
return hwnd;
}
这个事件不是EventHander的委托,而是HwndSourceHook的委托。
伟大的VS并没有对其做优化处理,所以在Xaml中响应事件会出错。只能在后台自己写了。
最新文章
- 如何延长windows评估版的方法
- java 21 - 14 Properties类
- Unity导出iOS真机测试教程
- bzoj3211,bzoj3038
- js高手
- 【剑指Offer学习】【面试题60:把二叉树打印出多行】
- HDU2018-母牛的故事
- 零积分下载,2014年辛星mysql教程秋季版第一本已经完工,期待您的支持
- Char device registration
- entity framework core 支持批量插入,值得期待
- 【Spring源码分析】非懒加载的单例Bean初始化过程(上篇)
- BootStrap:轮播插件
- Asp.NetCore 读取配置文件帮助类
- 【中间件安全】IIS6安全加固规范
- python 简单的串口收发数据
- 【C++ Primer 第10章】 10.4.1 插入迭代器
- java基础-day30
- 学习Spring Boot:(十四)spring-shiro的密码加密
- 【Python】Http Post请求四种请求体的Python实现
- Java基础学习篇---------多态
热门文章
- java——spring中bean的作用域
- 01—EF开山篇,ORM介绍
- BZOJ 1180 [CROATIAN 2009]OTOCI // BZOJ 2843 极地旅行社 // Luogu P4321 [COCI 2009] OTOCI / 极地旅行社 (LCA板题)
- HDU 6085 - Rikka with Candies | 2017 Multi-University Training Contest 5
- EasyLogging++学习笔记(1)—— 简要介绍
- nginx配置项
- 03 JavaScript的使用
- hdu 3555 Bomb(数位dp入门)
- [Luogu] 旅行
- 关于shell输出的一些问题