职业IT人-IT人生活圈

 找回密码
 成为会员
搜索
查看: 1061|回复: 1

C#实现TreeView节点点击触发事件

[复制链接]
技安 发表于 2009-8-19 09:14 | 显示全部楼层 |阅读模式
  1. public partial class _Default : System.Web.UI.Page
  2. {
  3. SqlConnection conne = new SqlConnection("data source=.;initial catalog=sy;integrated security=sspi");
  4. DataSet datast = new DataSet();
  5. protected void Page_Load(object sender, EventArgs e)
  6. {
  7. if (!Page.IsPostBack)//在不加这一句之前
  8. 每次刷新一下页面
  9. 就会多一个树控件出来
  10. 一直叠加.加了这一句之后
  11. 就不会重复加载了.
  12. {
  13. conne.Open();
  14. this.createDataSet();
  15. conne.Close();
  16. this.InitTree(TreeView1.Nodes, "0");
  17. conne.Close();
  18. }
  19. private DataSet createDataSet()//返回数据库表
  20. {
  21. datast = new DataSet();
  22. string sqlStr = "select * from Tree ";
  23. SqlDataAdapter cmdSelect = new SqlDataAdapter(sqlStr,conne);
  24. cmdSelect.Fill(datast, "Tree");
  25. return datast;
  26. }


  27. protected void InitTree(TreeNodeCollection Nds, string parentId)//用递归方法动态生成节点
  28. {
  29. DataView dv = new DataView();
  30. TreeNode tmpNode;
  31. dv.Table =datast.Tables["Tree"];
  32. dv.RowFilter = "ParentId=" + "'" + parentId + "'";
  33. foreach (DataRowView drv in dv)
  34. {
  35. tmpNode = new TreeNode();
  36. tmpNode.Value = drv["Id"].ToString();
  37. tmpNode.Text = drv["Name"].ToString();
  38. //tmpNode.NavigateUrl = "#";//设置超链接
  39. tmpNode.SelectAction = TreeNodeSelectAction.None;//禁用超链接属性
  40. tmpNode.ExpandAll();//展开所有子节点
  41. Nds.Add(tmpNode);
  42. this.InitTree(tmpNode.ChildNodes, tmpNode.Value);
  43. }
  44. }

  45. }
复制代码
不是通过修改属性之类生成树状图
通过绑定数据库
现在只能展开树
不能点击某一个节点
更不能点某一个节点链接到其他页面
请教怎么写代码产生节点链接!! 问题补充:
a5202003说的是这样的嘛
我要的效果是每个节点在我鼠标放在上面的时候
有像超级链接的下划线
当我点击的时候
就可以链接到我想要的页面!加上一楼的那一句代码可以
但是没有对选中哪一个节点进行判断..
风的方向 发表于 2009-8-19 09:15 | 显示全部楼层

C#实现TreeView节点点击触发事件

那你把你想做链接的那一列设成模板列,在里面添加一个Linkbutton,把LinkButton的值等于你的数据库中的值就OK了.

if (!Page.IsPostBack)//在不加这一句之前
每次刷新一下页面
就会多一个树控件出来
一直叠加.加了这一句之后
就不会重复加载了.

IsPostBack是一个十分重要的方法,表示页面是否为第一次加载...
您需要登录后才可以回帖 登录 | 成为会员

本版积分规则

QQ|手机版|小黑屋|网站帮助|职业IT人-IT人生活圈 ( 粤ICP备12053935号-1 )|网站地图
本站文章版权归原发布者及原出处所有。内容为作者个人观点,并不代表本站赞同其观点和对其真实性负责,本站只提供参考并不构成任何投资及应用建议。本站是信息平台,网站上部分文章为转载,并不用于任何商业目的,我们已经尽可能的对作者和来源进行了通告,但是能力有限或疏忽造成漏登,请及时联系我们,我们将根据著作权人的要求立即更正或者删除有关内容。

GMT+8, 2024-5-3 20:47 , Processed in 0.121631 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表