| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 788 人关注过本帖
标题:读取Html标签到树中
只看楼主 加入收藏
ioriliao
Rank: 7Rank: 7Rank: 7
来 自:广东
等 级:贵宾
威 望:32
帖 子:2829
专家分:647
注 册:2006-11-30
结帖率:78.95%
收藏
 问题点数:0 回复次数:1 
读取Html标签到树中
HtmlDom.rar (113.63 KB)

WebBrowser 控件为 WebBrowser ActiveX 控件提供了托管包装。托管包装使您可以在 Windows 窗体客户端应用程序中显示网页。使用 WebBrowser 控件,可以复制应用程序中的 Internet Explorer Web 浏览功能,还可以禁用默认的 Internet Explorer 功能,并将该控件用作简单的 HTML 文档查看器。此外,可以使用该控件将基于 DHTML 的用户界面元素添加到窗体中,还可以隐瞒这些元素在 WebBrowser 控件中承载的事实。通过这种方法,可以将 Web 控件和 Windows 窗体控件无缝地整合到一个应用程序中。下面演示的是一个把html文档读到树中。
程序代码:
/*

 * Created by SharpDevelop.

 * User: Administrator

 * Date: 2010-11-24

 * Time: 10:44

 *

 * To change this template use Tools | Options | Coding | Edit Standard Headers.

 */
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Windows.Forms;

namespace HtmlDom
{
    /// <summary>
    /// Description of MainForm.
    /// </summary>
    public partial class MainForm : Form
    {
        public MainForm()
        {
            //
            // The InitializeComponent() call is required for Windows Forms designer support.
            //
            InitializeComponent();
           
            //
            // TODO: Add constructor code after the InitializeComponent() call.
            //
        }
        AboutForm aFrm=new AboutForm();
        void MainFormLoad(object sender, EventArgs e)
        {
            aFrm.Show();
            UrlText.Width=toolStrip1.Width -(toolStripButton1.Width+toolStripButton2.Width+toolStripLabel1.Width+50);
        }
       
        void MainFormResize(object sender, EventArgs e)
        {
            UrlText.Width=toolStrip1.Width -(toolStripButton1.Width+toolStripButton2.Width+toolStripLabel1.Width+50);
        }
       
   
       
        void ToolStripButton1Click(object sender, EventArgs e)
        {
            webBrowser1.Navigate(UrlText.Text);
            while(webBrowser1.ReadyState!=){
                Application.DoEvents();
            }
            treeView1.Nodes.Clear();
            TreeNode node=new TreeNode();
            toolStripProgressBar1.Value=0;
            toolStripProgressBar1.Minimum=0;
            toolStripProgressBar1.Maximum=webBrowser1.Document.All.Count;
            GetDom(node,webBrowser1.Document.GetElementsByTagName("html"));
            treeView1.Nodes.Add(node.FirstNode);
        }
        void GetDom(TreeNode node,HtmlElementCollection html){
            foreach(HtmlElement he in html){
                TreeNode tmp=node.Nodes.Add("<"+he.OuterHtml.Split(new char[]{'<'})[1]);
                if(he.CanHaveChildren){
                    GetDom(tmp,he.Children);
                }
                toolStripProgressBar1.Value+=1;
            }
        }
       
        void ToolStripButton2Click(object sender, EventArgs e)
        {
            aFrm.Show();
        }
    }
}
图片附件: 游客没有浏览图片的权限,请 登录注册




[ 本帖最后由 ioriliao 于 2010-11-25 19:33 编辑 ]
搜索更多相关主题的帖子: Html 
2010-11-25 19:31
wangnannan
Rank: 18Rank: 18Rank: 18Rank: 18Rank: 18
等 级:贵宾
威 望:87
帖 子:2546
专家分:9359
注 册:2007-11-3
收藏
得分:0 
恩....... 研究一下

[ 本帖最后由 wangnannan 于 2010-11-25 20:24 编辑 ]

出来混,谁不都要拼命的嘛。 。拼不赢?那就看谁倒霉了。 。有机会也要看谁下手快,快的就能赢,慢。 。狗屎你都抢不到。 。还说什么拼命?
2010-11-25 20:15
快速回复:读取Html标签到树中
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.048301 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved