C#使用微软网页浏览器控件
原文见:C#使用微软网页浏览器控件
摘要: 这个小示例展示了如何使用微软网页浏览器以及微软 文档对象模型(DOM)去处理任意网页中的素。
为了在编程中使用DOM,需要把网页浏览器和与它的方法、属性、事件相关的DOM添加到你的C#工程中。通过调用Navigate方法打开Url地址指向的文档。打开网页需要一定时间,所以必须等待打开事件完成。通过IHTMLDocument2界面对象将浏览器文档格式化从而得到常见的网页形式。可以对集合进行相应的操作,如一个链接或图片集合,就会返回一个IHTMLElementCollection对象。
在这个小示例中,您将用网页浏览器和DOM来得到和显示一个网页中的所有内容。
在编程中访问 DOM
- 建立一个新的Visual C#窗口应用程序工程,并命名为DOM。
窗体的名称使用默认名Form1。
- 在解决方案资源管理器中,右键单击本工程,在弹出菜单中选择添加引用。
弹出“添加引用对话框”。
- 打开.NET页双击名为Microsoft.mshtml的组件。
- 单击确定。
微软DOM的相应方法、事件和属性都添加到了这个工程。
鼠标向左滑动,打开工具箱,右键单击任意工具,在弹出菜单中选择添加/移除项。
弹出添加/移除项对话框。
- 打开COM组件页选中微软网页浏览器一项前面的多选框。
带有标签的浏览器控件就出现在工具箱中刚才单击位置所在页了。
- 选择这个浏览器并单击窗体。
窗体上就会添加一个名为axWebBrowser1的网页浏览器。
- 在这个浏览器的上方添加一个TextBox组件,下方添加一个ListBox组件,这两个组件都使用它们的默认名称:textBox1和listBox1。
- 在listBox1右方添加一个Button组件。将Button的Text属性改为"提交",名称也使用默认:button1。
最后得到下图所示样式的窗口:
- 双击button1。
方法button1_Click就会自动添加到工程中。
- 在button1_Click方法中使用下面黑体的代码:
11. private void button1_Click(object sender, System.EventArgs e)
12. {
13. object Zero = 0;
14. object EmptyString = "";
15. axWebBrowser1.Navigate(textBox1.Text,
16. ref Zero, ref EmptyString, ref EmptyString, ref EmptyString);
}
- 回到窗体设计器界面,选中浏览器组件,单击属性窗口中的事件图标。
我们看到网页浏览器的事件列表。
- 双击Document Complete事件
axWebBrowser1_DocumentComplete事件处理过程就添加到工程了。
- 在窗体Form1的代码页的开头处添加下面黑体的引用:
20. using System.Data;
using mshtml;
- 在事件处理过axWebBrowser1_DocumentComplete添加如下黑体的代码:
22. private void axWebBrowser1_DocumentComplete(
23. object sender,
24. AxSHDocVw.DWebBrowserEvents2_DocumentCompleteEvent e)
25. {
26. IHTMLDocument2 HTMLDocument =
27. (IHTMLDocument2) axWebBrowser1.Document;
28. IHTMLElementCollection links = HTMLDocument.links;
29.
30. listBox1.Items.Clear();
31.
32. foreach (HTMLAnchorElementClass el in links)
33. {
34. listBox1.Items.Add(el.outerHTML);
35. }
}
- 按F5键编译并启动程序。
Form1窗体就出现了。
- 在文本框中输入一个Url地址,如:C#使用微软网页浏览器控件,然后单击提交。
网页就会显示在浏览器中,相应的素会显示在下面的列表框中,如下面截图所示:
更多信息尽在:
- Dynamic HTML (http://msdn.微软.com/library/en-us/iisref/html/psdk/asp/eadg39v0.asp)
- IHTMLDocument2 interface (http://msdn.微软.com/workshop/browser/mshtml/reference/ifaces/document2/document2.asp)
今天的文章 C使用微软网页浏览器控件分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ji-chu/103387.html