打印本文 打印本文 关闭窗口 关闭窗口
c#使用webbrowser控件触发按钮点击事件
作者:武汉SEO闵涛  文章来源:本站原创  点击数1503  更新时间:2011/11/23 16:11:48  文章录入:mintao  责任编辑:mintao
c#使用webbrowser控件触发按钮点击事件

刚做了个自动注册雅虎邮箱的小程序,调试n次提交成功后,ip被封,打开雅虎提示无法响应的信息了,哈哈,闲着没事,记录下这个小程序用到的触发webbrowser控件中按钮点击事件进行提交表单的方法。

c#下webbrowser类提供了很好的封装,基本上能用到的对浏览器里页面的操作都有了。

触发按钮事件,首先要获得按钮对象,可以使用webbrowser.Document.GetElementById这个方法,当然这是通过dom对象的id获取对象的,如果页面上的按钮没有id,只有name或者别的属性,那只能是枚举Document里所有对象一个一个比对找到需要的了。

找到按钮对象后,可以通过该对象的InvokeMember方法触发它的事件,参数可以只给一个,就是事件名,按钮点击的事件名是click。貌似和js里触发事件是差不多的。

如窗体上有个名字叫wb的WebBrowser控件对象,用该控件打开了一个页面,页面中有一个id为btn_save的按钮,要触发这个按钮的点击事件代码如下

以下是代码片段:
///找到按钮btn_save
HtmlElement btn= wb.Document.GetElementById("btn_save");
if (btn != null)
{
    ///触发他的点击事件
    btn.InvokeMember("click");
}

打印本文 打印本文 关闭窗口 关闭窗口