vs2005中的WebBrowser控件的简单应用

时间:2023-11-16 14:15:32

原文:vs2005中的WebBrowser控件的简单应用

这个控件被封装了一下,和以前的调用方式稍有不同。

事件还是那几个,变化不大。

方法变了不少。

从网上能查到的资料不多,贴出一些代码来作参考。

看看这段代码,可以用来分析网页上的元素的类型的。

vs2005中的WebBrowser控件的简单应用        private void btn_Find_Click(object sender, EventArgs e)
vs2005中的WebBrowser控件的简单应用vs2005中的WebBrowser控件的简单应用        vs2005中的WebBrowser控件的简单应用{
vs2005中的WebBrowser控件的简单应用            //find all the input controls on the page
vs2005中的WebBrowser控件的简单应用            if (this.wb_Show.Document == null)
vs2005中的WebBrowser控件的简单应用vs2005中的WebBrowser控件的简单应用            vs2005中的WebBrowser控件的简单应用
vs2005中的WebBrowser控件的简单应用                MessageBox.Show("请先打开一个要分析的网页");
vs2005中的WebBrowser控件的简单应用                return;            
vs2005中的WebBrowser控件的简单应用            }
vs2005中的WebBrowser控件的简单应用            string type = this.cbx_type.Text.ToLower().Trim();
vs2005中的WebBrowser控件的简单应用            if (type == "")
vs2005中的WebBrowser控件的简单应用vs2005中的WebBrowser控件的简单应用            vs2005中的WebBrowser控件的简单应用{
vs2005中的WebBrowser控件的简单应用                MessageBox.Show("请选择一个分析对象的类型");
vs2005中的WebBrowser控件的简单应用                return;
vs2005中的WebBrowser控件的简单应用            }
vs2005中的WebBrowser控件的简单应用            this.lb_InputList.Items.Clear();
vs2005中的WebBrowser控件的简单应用            HtmlDocument htm = this.wb_Show.Document;
vs2005中的WebBrowser控件的简单应用            HtmlElementCollection all = htm.All;
vs2005中的WebBrowser控件的简单应用            for (int i = 0; i < all.Count; i++)
vs2005中的WebBrowser控件的简单应用vs2005中的WebBrowser控件的简单应用            vs2005中的WebBrowser控件的简单应用{
vs2005中的WebBrowser控件的简单应用                HtmlElement elem = all[i];
vs2005中的WebBrowser控件的简单应用                if (elem.TagName.ToLower() == type)
vs2005中的WebBrowser控件的简单应用vs2005中的WebBrowser控件的简单应用                vs2005中的WebBrowser控件的简单应用{
vs2005中的WebBrowser控件的简单应用                    this.lb_InputList.Items.Add(elem.Name);
vs2005中的WebBrowser控件的简单应用                }
vs2005中的WebBrowser控件的简单应用            }
vs2005中的WebBrowser控件的简单应用            MessageBox.Show("总共找到" + this.lb_InputList.Items.Count.ToString() + "个符合条件的结果");
vs2005中的WebBrowser控件的简单应用        }

这一段代码是用来触发按钮事件的,注意使用的是click参数

vs2005中的WebBrowser控件的简单应用                     if (elem.Name.ToLower() == login.Attributes["name"].Value)
vs2005中的WebBrowser控件的简单应用vs2005中的WebBrowser控件的简单应用                     vs2005中的WebBrowser控件的简单应用{
vs2005中的WebBrowser控件的简单应用                         //elem.InvokeMember("click");
vs2005中的WebBrowser控件的简单应用                         elem.InvokeMember("click");
vs2005中的WebBrowser控件的简单应用
vs2005中的WebBrowser控件的简单应用                     }

对于form的提交,得使用submit

vs2005中的WebBrowser控件的简单应用
vs2005中的WebBrowser控件的简单应用             else
vs2005中的WebBrowser控件的简单应用vs2005中的WebBrowser控件的简单应用             vs2005中的WebBrowser控件的简单应用{
vs2005中的WebBrowser控件的简单应用                 XmlNode form = FindNode("form");
vs2005中的WebBrowser控件的简单应用                 htm.Forms[form.Attributes["name"].Value].InvokeMember("submit");
vs2005中的WebBrowser控件的简单应用             }

获取值,和赋值类似

vs2005中的WebBrowser控件的简单应用                XmlNode userName = FindNode("userName");
vs2005中的WebBrowser控件的简单应用                if (elem.TagName.ToLower() == "input" && elem.Name.ToLower() == userName.Attributes["name"].Value)
vs2005中的WebBrowser控件的简单应用vs2005中的WebBrowser控件的简单应用                vs2005中的WebBrowser控件的简单应用{
vs2005中的WebBrowser控件的简单应用                    elem.InnerText = userName.InnerText;
vs2005中的WebBrowser控件的简单应用                }

可以使用这些简单的应用做一个网页自动登录之类的系统