asp.net里treeview使用方法(请高手进)
我想实现的效果:从数据库里把数据充到Treeview里面去,分为父节点,还有子节点请做个例子我看下。感激不尽最好能做个例子,用VS2005,然后传到我邮箱里(sunhen...
我想实现的效果:
从数据库里把数据充到Treeview里面去,分为父节点,还有子节点
请做个例子我看下。感激不尽
最好能做个例子,用VS2005,然后传到我邮箱里(sunhengwei1987@163.com)
顺便还有数据库一起传
谢谢大家了 展开
从数据库里把数据充到Treeview里面去,分为父节点,还有子节点
请做个例子我看下。感激不尽
最好能做个例子,用VS2005,然后传到我邮箱里(sunhengwei1987@163.com)
顺便还有数据库一起传
谢谢大家了 展开
4个回答
展开全部
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
public partial class ucTree : System.Web.UI.UserControl
{
const string connectionString =@"Data Source=192.168.104;Initial Catalog=huayuhongbo;Persist Security Info=True;User ID=sa; Password=sa;";
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
PopulateNodes();
}
void PopulateNodes()
{
DataTable messages = GetTreeViewData();
DataView threads = GetThreads(messages);
foreach (DataRowView row in threads)
{
TreeNode threadNode = new TreeNode();
threadNode.Text = row["typename"].ToString();
threadNode.Value = row["tid"].ToString();
TreeView1.Nodes.Add(threadNode);
AddReplies(messages, threadNode);
}
}
DataTable GetTreeViewData()
{
SqlConnection con = new SqlConnection(connectionString);
SqlDataAdapter dad = new
SqlDataAdapter("SELECT * FROM dbo.ProductBriefIntroduction", con);
DataTable dtbl = new DataTable();
dad.Fill(dtbl);
return dtbl;
}
DataView GetThreads(DataTable discuss)
{
DataView view = new DataView(discuss);
view.RowFilter = "fid=0";
return view;
}
void AddReplies(DataTable messages, TreeNode node)
{
DataView replies = GetReplies(messages, node.Value);//所有数据表,一个节点的id
foreach (DataRowView row in replies)
{
TreeNode replyNode = new TreeNode();
replyNode.Text = row["typename"].ToString();
replyNode.Value = row["tid"].ToString();
node.ChildNodes.Add(replyNode);
AddReplies(messages, replyNode);
}
}
DataView GetReplies(DataTable messages, string messageID)
{
DataView view = new DataView(messages);
view.RowFilter = "fid=" + messageID;//根节点
return view;
}
}
这是我刚才写的. 不知道 我写得对你是不是很有用. 有什么不明白的. 可以问我. 我也是一个刚入门的学者.
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
public partial class ucTree : System.Web.UI.UserControl
{
const string connectionString =@"Data Source=192.168.104;Initial Catalog=huayuhongbo;Persist Security Info=True;User ID=sa; Password=sa;";
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
PopulateNodes();
}
void PopulateNodes()
{
DataTable messages = GetTreeViewData();
DataView threads = GetThreads(messages);
foreach (DataRowView row in threads)
{
TreeNode threadNode = new TreeNode();
threadNode.Text = row["typename"].ToString();
threadNode.Value = row["tid"].ToString();
TreeView1.Nodes.Add(threadNode);
AddReplies(messages, threadNode);
}
}
DataTable GetTreeViewData()
{
SqlConnection con = new SqlConnection(connectionString);
SqlDataAdapter dad = new
SqlDataAdapter("SELECT * FROM dbo.ProductBriefIntroduction", con);
DataTable dtbl = new DataTable();
dad.Fill(dtbl);
return dtbl;
}
DataView GetThreads(DataTable discuss)
{
DataView view = new DataView(discuss);
view.RowFilter = "fid=0";
return view;
}
void AddReplies(DataTable messages, TreeNode node)
{
DataView replies = GetReplies(messages, node.Value);//所有数据表,一个节点的id
foreach (DataRowView row in replies)
{
TreeNode replyNode = new TreeNode();
replyNode.Text = row["typename"].ToString();
replyNode.Value = row["tid"].ToString();
node.ChildNodes.Add(replyNode);
AddReplies(messages, replyNode);
}
}
DataView GetReplies(DataTable messages, string messageID)
{
DataView view = new DataView(messages);
view.RowFilter = "fid=" + messageID;//根节点
return view;
}
}
这是我刚才写的. 不知道 我写得对你是不是很有用. 有什么不明白的. 可以问我. 我也是一个刚入门的学者.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
使用mappath站点地图可以填充treeview,更多请参考webcast上的视频教程,使用IReaper这个软件可以下载视频教程
顺便说下,webcast上的视频做的很好,一个多小时的视频才十兆左右,太强了
顺便说下,webcast上的视频做的很好,一个多小时的视频才十兆左右,太强了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Treeview本身就是针对于XML文件而开发的,用数据库的话,也是可以,不过对数据库设计要求挺高!
愿你成功!
愿你成功!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
楼主,我已经发给你了. 不要食言
lfoywwg112@126.com
lfoywwg112@126.com
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询