asp.net treeview怎么连接数据库?

基本是这个样子。。... 基本是这个样子。。 展开
 我来答
百度网友c6e651a
2013-11-06 · 超过22用户采纳过TA的回答
知道答主
回答量:43
采纳率:0%
帮助的人:53.6万
展开全部
加入定义了一个TreeView控件, ID = "Treeview1"

一般采用递归的方式来给TreeView1添加节点,来达到你上面所描述的内容:
伪代码如下:
首先第一个方法是:

TreeView1.Nodes.Clear();
DataTable table = GetTreeViewTable(); // 获取表里的全部内容
DataView view = GetBase(table); //添加你的过滤条件,相当于数据库sql查询里面的where部分
foreach (DataRowView row in view)
{
TreeNode node = new TreeNode();
node.Text = row["Name"].ToString();
node.Value = row["Id"].ToString();
TreeView1.Nodes.Add(node); //添加父节点, 如:教师系统 是最大的父节点
AddNode(table, node); //递归查找其下面的子节点
}
TreeView1.ExpandDepth = 0;

void AddNode(DataTable table, TreeNode node)
{
DataView view = GetChild(table, node.Value);
foreach (DataRowView row in view)
{
TreeNode childnode = new TreeNode();
childnode.Text = row["CategoryName"].ToString();
childnode.Value = row["CategoryId"].ToString();
node.ChildNodes.Add(childnode);
AddNode(table, childnode);
}
}

DataView GetChild(DataTable table, string id)
{
DataView view = new DataView(table);
view.RowFilter = "ParentId='" + id + "'";
view.Sort = "OrderBy";
return view;
}

GetTreeViewTable()和GetBase()很好写了,你自己仿照上面搞定,串起来就OK了。
已经非常详细了吧
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式