WebBrowser在C#中的应用

本文介绍如何使用C#与WebBrowser控件进行交互,包括接收JavaScript返回的数组、读写变量值及调用JavaScript方法。通过具体代码示例展示了如何设置表单值并触发按钮点击事件。

如何接收Javascript返回的数组

this.webBrowser1.DocumentText = @" ";

object values = this.webBrowser1.Document.InvokeScript("GetValues", null);

foreach (object value in (IEnumerable)values)

{

   MessageBox.Show(value.ToString());

}

 

mshtml.IHTMLDocument2 doc = (mshtml.IHTMLDocument2)axWebBrowser1.Document;
mshtml.IHTMLWindow2 win = (mshtml.IHTMLWindow2)doc.parentWindow;
//读变量值
object o = win.GetType().InvokeMember ("var1", BindingFlags.GetProperty, null, win, new Object [] {});
//写变量值
win.GetType().InvokeMember ("var1", BindingFlags.SetProperty, null, win, new Object [] {"新的值"});
//调用方法
win.GetType().InvokeMember("testx",BindingFlags.InvokeMethod,null,win,new object[]{1});

 

HtmlDocument doc = this.webBrowser1.Document;
doc.GetElementById("kw").InnerText = "test";
doc.GetElementById("btn").InvokeMember("click");

 

项目中添加Micrsoft.mshtml引用
private void webBrowser1_Navigated(object sender, WebBrowserNavigatedEventArgs e)
{
  IHTMLDocument2 vDocument = (IHTMLDocument2)webBrowser1.Document.DomDocument;
  vDocument.parentWindow.execScript(
    "function alert(str){if(str=='zswang')confirm(str);}", "javaScript");
}

 

HtmlElement btnSubmit = webBrowser.Document.All["submitbutton"];
HtmlElement tbUserid = webBrowser.Document.All["username"];
tmlElement tbPasswd = webBrowser.Document.All["password"];
if (tbUserid == null || tbPasswd == null || btnSubmit == null)
  return;

tbUserid.SetAttribute("value", "smalldust");
tbPasswd.SetAttribute("value", "12345678");
btnSubmit.InvokeMember("click");

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值