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

/*
*Description:完全的操作XML文件
*Auther:mingziweb_天很蓝
*Email:chongchong2008@msn.com
*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();

}







}
}
posted on 2006-12-12 00:06 曾科 阅读(246) 评论(0)  编辑  收藏 所属分类: C#

只有注册用户登录后才能发表评论。


网站导航:
 
<2024年12月>
24252627282930
1234567
891011121314
15161718192021
22232425262728
2930311234

常用链接

留言簿(3)

随笔档案

文章分类

文章档案

相册

.net

搜索

  •  

最新评论

阅读排行榜

评论排行榜