C#有关TreeView动态生成根节点、子节点的问题 我在Page_load事件中生成根节点和一级子节点,想实现点击某个一级子节点则会出现与之对应的二级子节点。以此类推出现三级,四级等。数据都重数据库中获取。TreeView C# 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 节点点击事件--》从数据库获取子节点数据--》为当前节点添加子节点--》展开子节点(Expend) google treeview 无限级 加载 数据库 csharp 给你一个地址吧,这是我之前学的时候做的一个小demo,跟你想要的效果好像是一样的,希望对你有帮助http://download.csdn.net/my/uploads/2 PID为父节点 SID为自身的节点IDSelect Name,Code,Pid,Sid from TreeView where Pid = 0 在每次绑定数据的时候。给每个TreeView的子对象加上一个事件处理方法。也就是Item.Click += new.........(Item_Click);在这个ItemClick里面可以获取到当前的节点。然后就可以Select Name,Code,Pid,Sid from TreeView where Pid = (当前节点的CID)这个思路清晰不? private void treeView1_AfterSelect(object sender, TreeViewEventArgs e) { if (e.Node.Tag.ToString()=="0") //如果tag为0,点击树节点添加 { this.明细表模板目录TableAdapter1.FillBy(this.互感器设计DataSet1.明细表模板目录, e.Node.text); //按节点查询数据库 foreach (DataRowView r in 互感器设计DataSet1.明细表模板目录.DefaultView) { TreeNode tn2 = new TreeNode(); tn2.Text = r["明细表名称"].ToString(); tn2.Tag = 0; e.Node.Nodes.Add(tn2); } e.Node.tag=1;//查询后将tag 改为1,下次就吧用查了 } } 不是吧,this.TreeView.SelectedNode.Value,好久没有用过了,应该就是这个,你试下 给dataGridView增加序号列 这个怎么简单化 用什么方法呢 我使用backgroundWorker时访问下拉菜单,遇到跨线程错误! 查找已打开的窗口! 如何修改数据库的连接 窗体中控件和控件之间的那个分隔线怎么弄的?2...在窗体画一条线怎么画?winform... 新窗体的问题 发个前一阵为我们教练写的会员管理系统~大二自学党.. gridview指定一行变色 调用COM+问题 C++代码转换成C# c#com引用要到哪里下载啊?
Select Name,Code,Pid,Sid from TreeView where Pid = 0
在每次绑定数据的时候。给每个TreeView的子对象加上一个事件处理方法。也就是
Item.Click += new.........(Item_Click);
在这个ItemClick里面可以获取到当前的节点。然后就可以
Select Name,Code,Pid,Sid from TreeView where Pid = (当前节点的CID)
这个思路清晰不?
{
if (e.Node.Tag.ToString()=="0") //如果tag为0,点击树节点添加
{
this.明细表模板目录TableAdapter1.FillBy(this.互感器设计DataSet1.明细表模板目录, e.Node.text); //按节点查询数据库
foreach (DataRowView r in 互感器设计DataSet1.明细表模板目录.DefaultView)
{
TreeNode tn2 = new TreeNode();
tn2.Text = r["明细表名称"].ToString();
tn2.Tag = 0;
e.Node.Nodes.Add(tn2);
}
e.Node.tag=1;//查询后将tag 改为1,下次就吧用查了
}
}
不是吧,this.TreeView.SelectedNode.Value,好久没有用过了,应该就是这个,你试下