.NET平台下创建动态Web树形结构程序设计

王朝asp·作者佚名  2006-01-31
窄屏简体版  字體: |||超大  

使用TreeView控件创建树形结构

数据库结构设计

本文使用的是MS-SQLSERVER2000,涉及到以下两个数据库表:

表名

说明

表名

说明

MainBords

主版编号表

SubBorads

子版表

各表中的字段如下:

MainBoards中的字段设置

字段

类型

说明

MainID

整型

索引号

MainName

字符型

主版名称

SubBoards中的字段设置:

SubBoards中的字段设置:

字段

类型

说明

SubID

整型

索引号

MainID

整型

对应的主版编号

SubName

字符型

子版名称

字段

类型

说明

SubID

整型

索引号

MainID

整型

对应的主版编号

SubName

字符型

子版名称

3.2 创建树形结构:

3.2 创建树形结构:

3.2 创建树形结构:

要实现树形结构,我们首先必须添加主节点,也就是MainBoards表。

先连接数据库:

SqlConnection CN = new SqlConnection();

//初始化连接字符串,请根据实际情况修改

CN.ConnectionString= "data source=localhost;initial catalog=bbs;persist security info=False;user id=sa;Password=sa;";

CN.Open();

SqlDataAdapter adp = new SqlDataAdapter("select * from MainBoards",CN);

DataSet ds=new DataSet();

adp.Fill(ds);

添加主节点

int numMain=ds.Tables[0].Rows.Count;

for(int i=0;i<numMain;i++)

{

TreeNode Node=new TreeNode() ;

Node.Text =ds.Tables[0].Rows[i][1].ToString();

tree.Nodes.Add(Node);

Node.Expanded=true;

int MainID=Convert.ToInt32(ds2.Tables[0].Rows[i][0].ToString());

//调用AddSubTree方法添加子节点

AddSubTree(MainID,Node);

AddSubTree方法

public void AddSubTree(int MainID,TreeNode pNode)

{ //读取SubBorads表中的内容

SqlConnection con = new SqlConnection();

con.ConnectionString= "data source=localhost;initial catalog=bbs;persist security info=False;user id=sa;Password=sa;";

con.Open();

SqlDataAdapter adp1 = new SqlDataAdapter("select * from SubBoards where MainID='"+MainID+"'",con);

DataSet ds1=new DataSet();

adp1.Fill(ds1);

int numSub=ds1.Tables[0].Rows.Count;

//在给定的主节点下添加子节点

for(int i=0;i<numSub;i++)

{

TreeNode Node=new TreeNode() ;

Node.Text =ds1.Tables[0].Rows[i][2].ToString();

pNode.Nodes.Add(Node);

//在此设置节点点击以后定向到页面:

Node.NavigateUrl="display.aspx?id=";

Node.Expanded=false;}

}

最后调试实现如下效果:

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航