1.引用using mshtml;  //Microsoft HTML Object Library
2.[ComVisible(true)] //放到类的上边
public partial class Form1 : Form

3.//激活webBrowser1_Navigated事件
private void webBrowser1_Navigated(object sender, WebBrowserNavigatedEventArgs e)
{

IHTMLWindow2 ihtmlWin = webBrowser1.Document.Window.DomWindow as IHTMLWindow2;
StringBuilder strAlertBuilder = new StringBuilder();
strAlertBuilder.Append("var _alert=window.alert;\n");
strAlertBuilder.Append("window.alert=function(s){\n");
strAlertBuilder.Append("window.external.alertMessage(s);}");

ihtmlWin.execScript(strAlertBuilder.ToString(), "Javascript");

}
4. //接收alert的内容
public void alertMessage(string s)
{
this.textBox1.Text = s;
}
5.关键
private void Form1_Load(object sender, EventArgs e)
{
webBrowser1.ObjectForScripting = this;//此属性是得到alert关键设置,否则可以禁止弹出,但是无法得到信息
}

webBrowser捕获Alert内容(C#)的更多相关文章

  1. webbrowser 禁用 alert

    void web_Navigated(object sender, WebBrowserNavigatedEventArgs e) { var web = sender as System.Windo ...

  2. C# 通过扩展WebBrowser捕获网络连接错误信息

    想捕获WebBrowser连接指定网站过程中发生的错误信息,包括网络无法连接.404找不到网页等等错误!经过网上的搜集,找到了以下解决方案,该解决方案不会在网站连接前发出多余的测试请求. 向Webbr ...

  3. C# Winform 中webBrowser显示html内容时禁止错误提示的方法

    在winform中有一个控件可以显示html的内容,该控件就是webbrowser,设置它的DocumenText属性为HTML的内容即可. 在使用WebBrowser做UI的时候,我们有时不希望里面 ...

  4. 分享 WebBrowser显示Html内容3点细节技巧,解决刷新后空白

    直接显示Html内容,不像直接导航网址容易处理: 问题:按微软的控件属性提示,可以用WebBrowser.DocumentText 属性赋值 ,但是这种赋值,只是首次有效,后续切换都没啥作用. 下面给 ...

  5. WinForm开发浏览器,WebBrowser获取页面内容,如何解决中文乱码

    WebBrowser的编码可以从文档对象中获得,将代码改为如下即可. System.IO.StreamReader getReader = new System.IO.StreamReader(thi ...

  6. WPF:Webbrowser 捕获关闭事件

    有点难描述说的是什么.大概就是下面这个图:窗体中嵌套一个Webbrowser,现在网页请求关闭 响应MessageHook事件: this.webBrowser.MessageHook += webB ...

  7. c#winform使用WebBrowser 大全[超长文转载]

    1.主要用途:使用户可以在窗体中导航网页. 2.注意:WebBrowser 控件会占用大量资源.使用完该控件后一定要调用 Dispose 方法,以便确保及时释放所有资源.必须在附加事件的同一线程上调用 ...

  8. C# Winform WebBrowser控件

    C# WinForm WebBrowser 1.主要用途:使用户可以在窗体中导航网页. 2.注意:WebBrowser 控件会占用大量资源.使用完该控件后一定要调用 Dispose 方法,以便确保及时 ...

  9. c#winform使用WebBrowser 大全

    C# WinForm WebBrowser (一) MSDN资料 1.主要用途:使用户可以在窗体中导航网页. 2.注意:WebBrowser 控件会占用大量资源.使用完该控件后一定要调用 Dispos ...

随机推荐

  1. Linux 进程间通信(一)(经典IPC:管道、FIFO)

    管道 管道是Unix系统IPC的最古老方式,有两种局限性: (1)   历史上它们是半双工的(即数据只能在一个方向上流动),虽然现在某些系统提供了全双工管道,但是为了可移植性,不要抱有绝对的全双工假设 ...

  2. ASP.NET MVC 获取计算机字体

    //加载计算机上可用的字体 public string LoadFonts() { try { var fontCollection = new InstalledFontCollection(); ...

  3. (转)Where与Having的总结

    Where 是一个约束声明,使用Where来约束来之数据库的数据,Where是在结果返回之前起作用的,且Where中不能使用聚合函数. Having 是一个过滤声明,是在查询返回结果集以后对查询结果进 ...

  4. Java Switch Statement

    Java Switch Java Switch Statement switch语句的执行规则如下     1.从第一个case开始判断,不匹配则跳到下一个case继续判断:     2.遇到brea ...

  5. Java经典设计模式之十一种行为型模式

    转载: Java经典设计模式之十一种行为型模式 Java经典设计模式共有21中,分为三大类:创建型模式(5种).结构型模式(7种)和行为型模式(11种). 本文主要讲行为型模式,创建型模式和结构型模式 ...

  6. thinkphp5.0命名空间

    命名空间 ThinkPHP采用命名空间方式定义和自动加载类库文件,有效的解决了多模块和Composer类库之间的命名空间冲突问题,并且实现了更加高效的类库自动加载机制. 如果不清楚命名空间的基本概念, ...

  7. Latex 学习之旅

    学习资料 A simple guide to LaTeX - Step by Step LaTeX WikiBook LaTeX 科技排版 TeXdoc Online (TeX and LaTeX d ...

  8. python中if和elif的区别

    多个if语句是每次单独判断 比如: 例子一: a = 5 if a < 6: #条件1 print(1) if a < 7: #条件2 print(2) else: print(3) 条件 ...

  9. 【面试总结-编程】多行两列数据,实现同key的value求和并输出

    一个文件,两列,多行. 第一列是字母,第二列是数字,同列数据之间通过空格分割. 统计首列字母相同的第二列之和. 样例输入: A 5 B 6 OO 7 A 6 A 2 OO 2 输出: A:13 B:6 ...

  10. 【欧拉回路】UVA - 10054 The Necklace

    题目大意: 一个环被切割成了n个小块,每个小块有头尾两个关键字,表示颜色. 目标是判断给出的n个小块能否重构成环,能则输出一种可行解(按重构次序输出n个色块的头尾颜色).反之输出“some beads ...