C# WebBrowser 网页操作

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

C#的WebBrowser操作frame如此简单

刚学c#不久,也不太懂什么IHTMLDocument、IHTMLDocument2、IWebBrowser2等等。自己琢磨了好久,终于知道了怎么用WebBrowser操作frame和iframe。

1.获取frame的源文件

MessageBox.Show(webBrowser1.Document.Window.Fram es["main"].Document.Body.Inner Html);

2.获取frame的HTMLDocument接口

HTMLDocument doc = (HTMLDocument)webBrowser1.Document.DomDocument;

object j;

for (int i = 0; i < doc.parentWindow.frames.length; i++)

{

j = i;

HTMLWindow2Class fram e = doc.parentWindow.frames.item(ref j) as HTMLWindow2Class;

if ( == "main")

{

MessageBox.Show(frame.document.title);

}

}

3.获取frame的IHTMLDocument2接口

IHTMLDocument2 doc =

(IHTMLDocument2)webBrowser1.Document.Window.Frames["main"].Document.DomDocu ment;

4.取得frame中被点击的连接

private void webBrowser1_Navigating(object sender, WebBrowserNavigatingEventArgs e) {

string url =

webBrowser1.Document.Window.Frames["main"].Document.ActiveElement.GetAttribute("s rc");

}

原文:/llj1985/archive/2007/09/01/1768147.aspx

C# 通过webBrowser 框架网页

2009-11-16 08:53

首先对webBrowser加载网页

this.webBrowser1.Url= new System.Uri("url地址", System.UriKind.Absolute);

给一般不是框架网页中的文本框赋值

webBrowser1.Document.GetElementById("文本框ID").InnerText= "weiling";//文本框赋值根据ID赋值

或者:this.webBrowser1.Document.All["文本框name"].SetAttribute("value", "0924");//文本框赋值根据name赋值

表单提交,也可以看成是一个点击事件

HtmlElement form= webBrowser1.Document.GetElementById("formID");//提交表单

form.InvokeMember("submit");

框架网页中的文本框赋值,"frameMain"是框架的na me

webBrowser1.Document.Window.Frames["frameMain"].Document.GetElementById("txtXingming ").InnerText= "521656";//框架赋值

注:frameMain 是框架的name

框架网页中下拉框赋值

HtmlDocument doc= webBrowser1.Document.Window.Frames["frameMain"].Document;//框架下下拉框赋值

HtmlElement el= doc.GetElementById("drpXingbie");

el.SetAttribute("selectedIndex","1");

网页控件没有ID时的操作

C#:webBrowser1控件通过TagName,Name查找元素(没有ID时)

//防止页面多次刷新页面执行

if (num == 1)

{

string GetUserName = System.Configuration.ConfigurationSettings.AppSettings["Y2000UserName"].ToString();

string GetUserPassword = System.Configuration.ConfigurationSettings.AppSettings["Y2000UserPassword"].ToString();

int a = 1;

int all = webBrowser1.Document.Body.All.Count;

for (int i = 0; i < all; i++)

{

HtmlElement GetElement = webBrowser1.Document.All[i];

//取到包含input标签的元素

if (GetElement.T agName.T oUpper().ToString() == "INPUT")

{

//根据input的Name属性,找到该元素并赋值:给用户名输入框赋值

if (.ToString() == "UserName")

相关文档
最新文档