treeview绑定数据库 本人新手,想实现-所有类型 -镜片 近视镜 远视镜 隐形眼镜 -镜架 -其他绑定到数据库,而且右键能实现曾删改等节点操作,哪位有代码可以给我参考的么?网上找的都是没实践过的,自己想是想不出来了,望高手指点 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 DataTable dt1 = new DataTable(); DataTable dt2 = new DataTable(); string s1="select * from grade"; string s2="select * from class"; SqlCommand cmd = conn.CreateCommand(); cmd.CommandText=s1; SqlDataAdapter da = new SqlDataAdapter(cmd); da.Fill(dt1); cmd.CommandText = s2; da.Fill(dt2); //循环年级表,把年级名称加载到树控件上 foreach (DataRow row in dt1.Rows) { //年级节点 TreeNode node = new TreeNode(); node.Text=row["gradeName"].ToString(); node.Tag = row["gradeid"].ToString(); //找出相应年级的班级 DataRow[] rows=dt2.Select("gradeid=" + row["gradeid"].ToString()); //循环相应班级数据,把班级加到年级节点 foreach (DataRow dr in rows) { TreeNode tn = new TreeNode(); tn.Text = dr["className"].ToString(); tn.Tag = dr["classid"].ToString(); node.Nodes.Add(tn); } //添加年级节点 treeView1.Nodes.Add(node); } //展开所有节点 treeView1.ExpandAll(); //折叠所有节点 //treeView1.CollapseAll(); treeview递归绑定节点 if(!IsPostBack) { BindJG(); } private void BindJG() { DataSet ds = new DataSet(); //获取数据 DataTable dtb = ds.Tables[0]; TreeNode root = new TreeNode(); root.Value = "0"; root.Text = ""; root.ImageUrl = "../images/folder.gif"; root.Expanded = true; this.TreeView1.Nodes.Add(root); initTree(dtb, "", root); this.TreeView1.ExpandAll(); } protected void initTree(DataTable dt, string nFatherid, TreeNode fatherNode) { DataView dv = new DataView(dt); if (nFatherid == "") dv.RowFilter = "depth='1'"; else dv.RowFilter = "ParentId='"+nFatherid+"'"; foreach (DataRowView Row in dv) { TreeNode node = new TreeNode(); if (fatherNode.Value == "0") { node.Value = Row["BH"].ToString(); node.Text = Row["mc"].ToString(); node.NavigateUrl = ""; node.Target = "main"; node.ImageUrl = "../images/folder.gif"; fatherNode.ChildNodes.Add(node); initTree(dt, Row["BH"].ToString(), node); } else { node.Text = Row["mc"].ToString(); node.Value = Row["BH"].ToString(); node.ImageUrl = "../images/jg.gif"; node.Target = "main"; fatherNode.ChildNodes.Add(node); } } } http://topic.csdn.net/u/20100119/12/24834f68-c01c-4e1d-86d3-d11777017c20.html?21203 winform如何写监听事件,急! 如何实现数据同步实时更新 弱弱的问什么是DLL 有什么作用 软件更新问题 sqlserver 查询问题,不知道是不是sqlserver的漏洞! 如何重绘toolbar底色? 页面完全显示前显示等待页面怎么做啊?请大虾帮忙 在using System.Runtime.Remoting.Channels下怎么没有TcpServerChannel ??? 如何同时连接2个sql里的数据库?在线等,请高手赐教 请问哪里有英文版的VS.NET 2003能下? 用不是本机的IP远程登陆网站. C# 菜鸟问题!
DataTable dt2 = new DataTable();
string s1="select * from grade";
string s2="select * from class";
SqlCommand cmd = conn.CreateCommand();
cmd.CommandText=s1;
SqlDataAdapter da = new SqlDataAdapter(cmd);
da.Fill(dt1);
cmd.CommandText = s2;
da.Fill(dt2);
//循环年级表,把年级名称加载到树控件上
foreach (DataRow row in dt1.Rows)
{
//年级节点
TreeNode node = new TreeNode();
node.Text=row["gradeName"].ToString();
node.Tag = row["gradeid"].ToString();
//找出相应年级的班级
DataRow[] rows=dt2.Select("gradeid=" + row["gradeid"].ToString());
//循环相应班级数据,把班级加到年级节点
foreach (DataRow dr in rows)
{
TreeNode tn = new TreeNode();
tn.Text = dr["className"].ToString();
tn.Tag = dr["classid"].ToString();
node.Nodes.Add(tn);
}
//添加年级节点
treeView1.Nodes.Add(node);
}
//展开所有节点
treeView1.ExpandAll();
//折叠所有节点
//treeView1.CollapseAll();
if(!IsPostBack)
{
BindJG();
}
private void BindJG()
{
DataSet ds = new DataSet();
//获取数据
DataTable dtb = ds.Tables[0];
TreeNode root = new TreeNode();
root.Value = "0";
root.Text = "";
root.ImageUrl = "../images/folder.gif";
root.Expanded = true;
this.TreeView1.Nodes.Add(root);
initTree(dtb, "", root);
this.TreeView1.ExpandAll();
} protected void initTree(DataTable dt, string nFatherid, TreeNode fatherNode)
{
DataView dv = new DataView(dt); if (nFatherid == "")
dv.RowFilter = "depth='1'";
else
dv.RowFilter = "ParentId='"+nFatherid+"'";
foreach (DataRowView Row in dv)
{
TreeNode node = new TreeNode();
if (fatherNode.Value == "0")
{
node.Value = Row["BH"].ToString();
node.Text = Row["mc"].ToString();
node.NavigateUrl = "";
node.Target = "main";
node.ImageUrl = "../images/folder.gif";
fatherNode.ChildNodes.Add(node);
initTree(dt, Row["BH"].ToString(), node);
}
else
{
node.Text = Row["mc"].ToString();
node.Value = Row["BH"].ToString();
node.ImageUrl = "../images/jg.gif";
node.Target = "main";
fatherNode.ChildNodes.Add(node);
}
}
}
http://topic.csdn.net/u/20100119/12/24834f68-c01c-4e1d-86d3-d11777017c20.html?21203