| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1862 人关注过本帖
标题:想实现一个四级的TreeView控件,其数据库是如何设计的?最好有这方面的实例 ...
只看楼主 加入收藏
foshan
Rank: 1
等 级:新手上路
威 望:2
帖 子:605
专家分:0
注 册:2006-3-1
结帖率:100%
收藏
 问题点数:0 回复次数:8 
想实现一个四级的TreeView控件,其数据库是如何设计的?最好有这方面的实例,谢谢!
想实现一个四级的TreeView控件,其数据库是如何设计的?最好有这方面的实例,谢谢!
搜索更多相关主题的帖子: TreeView控件 四级 数据库 实例 设计 
2007-03-28 09:03
bygg
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:乖乖的心中
等 级:版主
威 望:241
帖 子:13555
专家分:3076
注 册:2006-10-23
收藏
得分:0 
一个父ID一个子ID就行了..

飘过~~
2007-03-28 09:04
foshan
Rank: 1
等 级:新手上路
威 望:2
帖 子:605
专家分:0
注 册:2006-3-1
收藏
得分:0 
父ID 与 子ID 是如何表达的??他们之间有什么形式上的类同中吗??

我是2.0超级菜鸟,请多多教导!
2007-03-28 09:34
foshan
Rank: 1
等 级:新手上路
威 望:2
帖 子:605
专家分:0
注 册:2006-3-1
收藏
得分:0 
如下图所示,在数据库里,如何标识各节点与上一级你节点之间的联系???谢谢!
图片附件: 游客没有浏览图片的权限,请 登录注册

[此贴子已经被作者于2007-3-28 11:55:47编辑过]


我是2.0超级菜鸟,请多多教导!
2007-03-28 11:55
bygg
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:乖乖的心中
等 级:版主
威 望:241
帖 子:13555
专家分:3076
注 册:2006-10-23
收藏
得分:0 
比如:
ID 子ID 父ID
1 0 null
2 1 0
3 2 0
4 3 1
5 4 1
6 5 2
7 6 2
.....

这个里面:父ID为null的就是最大的层.父ID为0的就是ID为1的子菜单,父ID为1的就是ID为2的子菜单,父ID为2的就是ID为3的子菜单.....这样..不要说是四级,就是四十级就可以..呵...

飘过~~
2007-03-28 12:56
sean88
Rank: 1
等 级:新手上路
帖 子:146
专家分:0
注 册:2007-3-27
收藏
得分:0 
我想问一下,VS2003 winform里面的treeview 每个节点前面如何带有checkbox?请问一下怎么样实现?

我找了一些网上的资料:TreeNode node=new TreeNode();
node.CheckBox=true; --我找不到这个属性,请问这句怎么实现
treeview1.nodes.add(node);

[此贴子已经被作者于2007-3-28 13:19:41编辑过]


Knowledge is infinite.
2007-03-28 13:03
bygg
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:乖乖的心中
等 级:版主
威 望:241
帖 子:13555
专家分:3076
注 册:2006-10-23
收藏
得分:0 
我知道2005里面可以直接添加CheckBox..以前用2003时没有弄过.呵.

飘过~~
2007-03-28 14:46
foshan
Rank: 1
等 级:新手上路
威 望:2
帖 子:605
专家分:0
注 册:2006-3-1
收藏
得分:0 
谢谢!试了一下,但以下的代码出错,请大家帮忙指正错误:错误 1 “System.Web.UI.WebControls.TreeNode”并不包含“Nodes”的定义 D:\myweb\TreeView\Default.aspx.cs 56 23 http://localhost/TreeView/

请大家帮忙解决,谢谢!
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//创建一个连接
SqlConnection conn = new SqlConnection("data source=(local);database=****;user=****; password=********");
//创建一个DataSet(数据集)
DataSet ds = new DataSet();
//创建一个DataAdapter
SqlDataAdapter da = new SqlDataAdapter("select * from tbTree", conn);
//填充DataSet ds
da.Fill(ds, "tbTree");
GridView1.DataSource = ds;
GridView1.DataBind();
this.ViewState["ds"] = ds;
AddTree(0, (TreeNode)null);
}
}
// 递归添加树的节点
public void AddTree(int ParentID, TreeNode pNode)
{

//调用递归函数,完成树形结构的生成
DataSet ds = (DataSet)this.ViewState["ds"];
DataView dvTree = new DataView(ds.Tables[0]);
//过滤ParentID,得到当前的所有子节点
dvTree.RowFilter = "[ParentID] = " + ParentID;
foreach (DataRowView Row in dvTree)
{
TreeNode Node = new TreeNode();
if (pNode == null)
{ //''̀添加根节点
Node.Text = Row["ConText"].ToString();
TreeView1.Nodes.Add(Node);
Node.Expanded = true;
AddTree(Int32.Parse(Row["ID"].ToString()), Node); //再次递归
}
else
{ //添加当前节点的子节点
Node.Text = Row["ConText"].ToString();
pNode.Nodes.Add(Node);
Node.Expanded = true;
AddTree(Int32.Parse(Row["ID"].ToString()), Node); //再次递归
}
}
}
图片附件: 游客没有浏览图片的权限,请 登录注册

图片附件: 游客没有浏览图片的权限,请 登录注册

[此贴子已经被作者于2007-3-28 16:11:49编辑过]



0nrngtzV.jpg (22.08 KB)
图片附件: 游客没有浏览图片的权限,请 登录注册


eTp5pkAX.jpg (24.73 KB)
图片附件: 游客没有浏览图片的权限,请 登录注册

我是2.0超级菜鸟,请多多教导!
2007-03-28 15:24
foshan
Rank: 1
等 级:新手上路
威 望:2
帖 子:605
专家分:0
注 册:2006-3-1
收藏
得分:0 
已解决!
在ASP.NET1.0没问题,在ASP.NET2.0就要将
pNode.Nodes.Add(Node);
改为
pNode.ChildNodes.Add(Node);

我是2.0超级菜鸟,请多多教导!
2007-03-28 16:37
快速回复:想实现一个四级的TreeView控件,其数据库是如何设计的?最好有这方面的 ...
数据加载中...
 
   



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

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