打印本文 打印本文 关闭窗口 关闭窗口
在 ASP.NET 页面中使用 TreeView 控件
作者:武汉SEO闵涛  文章来源:敏韬网  点击数3544  更新时间:2009/4/23 10:41:29  文章录入:mintao  责任编辑:mintao
sp;       TreeNode nd = this.TreeView1.GetNodeFromIndex(e.Node); //找到触发事件的节点,即正在展开的节点

                if(nd.Nodes[0].NodeData=="") //第一次加载,即只有“正在加载……”这一项

                {

                     this.AddSingleNode(nd,nd.NodeData); //加载子节点

                }

           }

 

           /// <summary>

           /// 只查找、添加单个节点下的子节点

           /// </summary>

           /// <param name="node">需要添加子节点的 TreeNode</param>

           /// <param name="id">该节点的 NodeID </param>

           private void AddSingleNode(TreeNode node,string id)

           {

                if(node!=null && id!="0")

                {

                     node.Nodes.Clear();//清空节点,主要是把“正在加载……”这一项移除

                }

                DBSystem.ExecuteSQL tmp = new DBSystem.ExecuteSQL("T");

                DataTable dt = tmp.GetDataTable("select * from TreeView where ParentID="+id);//从数据库抓出数据

                foreach(DataRow dr in dt.Rows) //历遍所有子节点

                {

                     TreeNode nd = new TreeNode();

                     nd.NavigateUrl=dr["URL"].ToString(); //设置浏览的网址

                     nd.NodeData=dr["NodeID"].ToString(); //存放节点 ID

                     nd.Text=dr["NodeName"].ToString();   //设置节点名称

 

                     TreeNode child = new TreeNode();     //此节点只作为“nd”展开的依据,并无它意

                     child.Text="正在加载……";

                     nd.Nodes.Add(child);

                     if(node==null|| id=="0")

                     {

                           this.TreeView1.Nodes.Add(nd);    //添加至根节点

                     }

                     else

                     {

                           node.Nodes.Add(nd);              //添加子节点

                     }

                }

           }

五、            修改“TreeView.cs”源码,取消 TreeView 默认选中节点

1、TreeView.cs 文件

在文中﹐找到 “ protected override void OnLoad(EventArgs e)”事件

protected override void OnPreRender(EventArgs e)” 事件,修改以下代码

 

if ((SelectedNodeIndex == "" || SelectedNodeIndex == String.Empty) && Nodes.Count > 0)

上一页  [1] [2] [3] [4]  下一页

打印本文 打印本文 关闭窗口 关闭窗口