实例学习(上下级类别判断)

数据表Department

DepartID    DepartName

      01              一级01

    0101          二级0101

    0102          二级0102

      02              一级02

    0201          二级0201

    0202          二级0202

  1.     /// <summary>
  2.     /// 绑定导航树
  3.     /// </summary>
  4.     protected void BindTree()
  5.     {
  6.         //获取树数据
  7.         DataSet ds = me.ExecuteDataSet("select * from Department");
  8.         //过虑出父节点
  9.         DataRow[] dr1 = ds.Tables[0].Select("len(DepartID)=2");
  10.         for (int i = 0; i < dr1.Length; i++)
  11.         {
  12.             int count;
  13.             TreeNode treeNode = new TreeNode();
  14.             treeNode.Text = dr1[i]["DepartName"].ToString();
  15.             //treeNode.NavigateUrl = "";//"../" + dr1[i]["Remark"];//这里导航,需要再设置字段。
  16.             //treeNode.Target = "main";
  17.             treeNode.SelectAction = TreeNodeSelectAction.Expand;
  18.             treeNode.ImageUrl = "../images/book.gif";
  19.             this.tv_Nav.Nodes.Add(treeNode);
  20.             //过虑出子节点
  21.             count = 0;
  22.             DataRow[] dr2 = ds.Tables[0].Select("len(DepartID)=4 and Substring(DepartID,1,2)='" + dr1[i]["DepartID"] + "'");
  23.             if (dr1.Length > 0)
  24.             {
  25.                 for (int j = 0; j < dr2.Length; j++)
  26.                 {
  27.                     //这里增加权限判断逻辑。
  28.                     //if (QXDM.IndexOf("" + dr2[j]["lmbh"]) < 0)
  29.                     //    continue;
  30.                     TreeNode childNode = new TreeNode();
  31.                     childNode.Text = dr2[j]["DepartName"].ToString();
  32.                     childNode.NavigateUrl = "../" + dr2[j]["Remark"].ToString();
  33.                     childNode.Target = "main";
  34.                     childNode.ImageUrl = "../images/book.gif";
  35.                     treeNode.ChildNodes.Add(childNode);
  36.                     count = count + 1;
  37.                 }
  38.             }
  39.             //如果没有小类,则连大类一起删除。
  40.             if (count == 0)
  41.                 tv_Nav.Nodes.Remove(treeNode);
  42.         }
  43.     }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值