在C#后代码里使用IE WEB Control TreeView

类别:.NET开发 点击:0 评论:0 推荐:

在C#后代码里使用IE WEB Control TreeView
网站目录下需要有Microsoft.Web.UI.WebControls.dll和相应的文件
如大家要转载,请保留本人的版权。

/*
*Description:完全的操作XML文件
*Auther:mingziweb_天很蓝
*Email:[email protected]
*Dates:22004-09-10
*Copyright:ChongChong2008 YiChang HuBei China
*/

 

.aspx
  <%@ Register TagPrefix="ie" Namespace="Microsoft.Web.UI.WebControls" Assembly="Microsoft.Web.UI.WebControls" %>
<%@ Page language="c#" Codebehind="TreeView.aspx.cs" AutoEventWireup="false" Inherits="Test.WebForm1" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
    <HEAD>
        <title>WebForm1</title>
        <meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
        <meta name="CODE_LANGUAGE" Content="C#">
        <meta name="vs_defaultClientScript" content="JavaScript">
        <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
    </HEAD>
    <body MS_POSITIONING="GridLayout">
        <form id="Form1" method="post" runat="server">
            <FONT face="宋体">
                <ie:TreeView id="myTreeView" style="Z-INDEX: 101; LEFT: 24px; POSITION: absolute; TOP: 32px"
                    runat="server"></ie:TreeView></FONT>
        </form>
    </body>
</HTML>

 

.cs
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;

using System.Data.SqlClient;
using System.Configuration;

using Microsoft.Web.UI.WebControls;

namespace Test
{
    /// <summary>
    /// WebForm1 的摘要说明。
    /// </summary>
    public class WebForm1 : System.Web.UI.Page
    {
        protected Microsoft.Web.UI.WebControls.TreeView myTreeView;
   
        private SqlConnection myConnection = new SqlConnection(ConfigurationSettings.AppSettings["strConn"]);

 

        #region Web 窗体设计器生成的代码
        override protected void OnInit(EventArgs e)
        {
            //
            // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
            //
            InitializeComponent();
            base.OnInit(e);
        }
       
        /// <summary>
        /// 设计器支持所需的方法 - 不要使用代码编辑器修改
        /// 此方法的内容。
        /// </summary>
        private void InitializeComponent()
        {   
            this.Load += new System.EventHandler(this.Page_Load);

        }
        #endregion

 

 

        private void Page_Load(object sender, System.EventArgs e)
        {
            // 在此处放置用户代码以初始化页面

            TreeNode myTreeNodeRoot = AddTreeNodeRoot();
            AppendChild(myTreeNodeRoot);

        }

 

 

        private TreeNode AddTreeNodeRoot()
        {

            TreeNode myTreeNode = new TreeNode();

            myTreeNode.ID = "420000";
            myTreeNode.Expanded = true;
            myTreeNode.Target = "";
            myTreeNode.Text = "我的社区";

            myTreeView.Nodes.Add(myTreeNode);
            return myTreeNode;
        }

 

        private TreeNode AddSubNode(TreeNode subTreeNode)
        {

            TreeNode myTreeNode = new TreeNode();

            myTreeNode.ID = "00001";
            myTreeNode.Expanded = true;
            myTreeNode.Target = "";
            myTreeNode.Text = "省份";
            myTreeNode.NavigateUrl = "" ;

            subTreeNode.Nodes.Add(myTreeNode);
            return myTreeNode;
        }

 

 

        private void AppendChild(TreeNode myTreeNode)
        {

            TreeNode mySubNode = AddSubNode(myTreeNode);

            if(GetClassTable().Rows.Count>0)
            {
                DataTable myDataTable = new DataTable();
                myDataTable = GetClassTable();

                for(int i=0;i<myDataTable.Rows.Count;i++)
                {
                    TreeNode myTreeNodeSub = new TreeNode();
                   
                    myTreeNodeSub.CheckBox=true;
                    if(i==20)
                    {
                        myTreeNodeSub.Checked=true;
                       
                    }

                    myTreeNodeSub.ID = myDataTable.Rows[i]["class_code"].ToString();
                    myTreeNodeSub.Expanded = false;
                    myTreeNodeSub.Target = "Body";
                    myTreeNodeSub.Text = myDataTable.Rows[i]["class_name"].ToString();
                    myTreeNodeSub.NavigateUrl = "DocList.aspx?DocCatalogGuid=" + myDataTable.Rows[i]["class_code"].ToString();
   
                    mySubNode.Nodes.Add(myTreeNodeSub);

                    AppendChildren(myTreeNodeSub);

                }
            }
        }

 


        private void AppendChildren(TreeNode myTreeNode)
        {
            if(GetSubClassTable(myTreeNode.ID).Rows.Count>0)
            {
                DataTable myDataTable = new DataTable();
                myDataTable = GetSubClassTable(myTreeNode.ID);

                for(int i=0;i<myDataTable.Rows.Count;i++)
                {
                    TreeNode myTreeNodeSub = new TreeNode();

                    myTreeNodeSub.CheckBox=true;


                    myTreeNodeSub.ID = myDataTable.Rows[i]["subclass_code"].ToString();
                    myTreeNodeSub.Expanded = false;
                    myTreeNodeSub.Target = "Body";
                    myTreeNodeSub.Text = myDataTable.Rows[i]["subclass_name"].ToString();
                    myTreeNodeSub.NavigateUrl = "DocList.aspx?DocCatalogGuid=" + myDataTable.Rows[i]["class_code"].ToString();

                    myTreeNode.Nodes.Add(myTreeNodeSub);

                    AppendChildren(myTreeNodeSub);

                }
            }
        }

 

 

        private DataTable GetClassTable()
        {
            //绑定drpMC_Code

            string strSql="select * from [class] order by id desc";

            OpenConnection();

            SqlDataAdapter myCommand = new SqlDataAdapter(strSql,myConnection);
            DataSet ds= new DataSet();
            myCommand.Fill(ds);

            CloseConnection();

            return ds.Tables[0];

        }

 


        private DataTable GetSubClassTable(string class_code)
        {
            //绑定drpMC_Code

            string strSql="select * from [subclass] where class_code=@class_code order by id desc";

            OpenConnection();


            SqlDataAdapter myCommand = new SqlDataAdapter(strSql,myConnection);

            myCommand.SelectCommand.CommandType=CommandType.Text;
            myCommand.SelectCommand.Parameters.Add("@class_code",SqlDbType.NVarChar,10).Value=class_code
                ;
            DataSet ds= new DataSet();
            myCommand.Fill(ds);

            CloseConnection();

            return ds.Tables[0];

        }

 


        /// <summary>
        /// 打开数据库连接
        /// </summary>

        private void OpenConnection()
        {

            if (myConnection.State == ConnectionState.Closed)
                myConnection.Open();
       
        }

 

 

        /// <summary>
        /// 关闭数据库连接
        /// </summary>

        private void CloseConnection()
        {

            if (myConnection.State == ConnectionState.Open)
                myConnection.Close();
       
        }

 

 

 

    }
}


 

本文地址:http://com.8s8s.com/it/it41674.htm