使用webbroswer的一点技巧记录

好久不用WebBrowser了,近日又一个东西用底层操作的方式没法实现又迫不得已使用WebBrowser。把以前的几个常用技巧记录下来以备以后查询

1.屏蔽网页中的js错误对话框

设置ScriptErrorsSuppressed属性值为true

2.强制所有超链接均在WebBrowser中打开

2.1在DocumentCompleted事件中写入以下代码:

//将所有的链接的目标,指向本窗体
foreach (HtmlElement archor in this.wsbMain.Document.Links)
{
archor.SetAttribute(
"target", "_self");
}

如需将form的指向也在WebBrowser打开则再加上以下代码:

//将所有的FORM的提交目标,指向本窗体
foreach (HtmlElement form in this.wsbMain.Document.Forms)
{
form.SetAttribute(
"target", "_self");
}

2.2在NewWindow事件中加上

e.Cancel = true;

3.访问统一网址时有缓存的问题

解决方案:在要访问的网址后加?id=随机数字;即给他强制加一个query参数,名称随意,那个value不要跟上次的重复

webBrowser1.Navigate("http://china.alibaba.com/member/alipay_manager.htm?tracelog=work_7_m_alipaymanager?id=" + mvCurrentIndex);

//其中mvCurrentIndex是我一个自增长的int类型变量
posted @ 2011-07-01 23:29  phcis  阅读(369)  评论(0编辑  收藏  举报