• 模仿树形控件显示效果


    建立树形结构:

     1 #region
     2         protected StringBuilder CreateTreeView()
     3         {
     4             string sql = "类型表";
     5             StringBuilder sb = new StringBuilder();
     6             OperateData ort = new OperateData();
     7             DataTable dt = ort.ExcuteToDataSet(sql).Tables["mytable"];
     8             sb.Append("|_<a href=NewsType.aspx?id=0>根目录</a><br>");
     9             CreateTreeViewRecursive(sb, dt, 0);
    10             dt.Dispose();
    11             ort = null;
    12             return sb;
    13         }
    14        
    15         /// <summary>
    16         /// 递归查询
    17         /// </summary>
    18         /// <param name="nodes">TreeView的节点集合</param>
    19         /// <param name="dataSource">数据源</param>
    20         /// <param name="parentid">上一级行政区划的标识码</param>
    21         protected void CreateTreeViewRecursive(StringBuilder mysb, DataTable dataSource, int parentid)
    22         {
    23             string filter;
    24             filter = string.Format("p_oid={0}", parentid);
    25             DataRow[] drarr = dataSource.Select(filter);
    26             foreach (DataRow dr in drarr)
    27             {
    28                 if (parentid == 0)
    29                 {
    30                     mysb.Append("|&nbsp;&nbsp;&nbsp;&nbsp;|_<a href=NewsType.aspx?id=" + dr["p_id"].ToString() + "><font color=red>" + (string)dr["p_type"] + "</font></a><br>");
    31                 }
    32                 else if (getMain(parentid.ToString()) == "0")
    33                 {
    34                     mysb.Append("|&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;|_<a href=NewsType.aspx?id=" + dr["p_id"].ToString() + ">" + (string)dr["p_type"] + "</a><br>");
    35                 }
    36                 else
    37                 {
    38                     mysb.Append("|&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;|_<a href=NewsType.aspx?id=" + dr["p_id"].ToString() + ">" + (string)dr["p_type"] + "</a><br>");
    39                 }
    40                 CreateTreeViewRecursive(mysb, dataSource, Int32.Parse(dr["p_id"].ToString()));
    41             }
    42         }
    43         #endregion

    前台调用可以用label显示输出的结果。

    效果截图:

  • 相关阅读:
    TCP 协议如何保证可靠传输
    mysql 优化
    Navicat 导入导出
    Hibernate的优缺点
    寒假学习日报(十八)
    《机器学习十讲》第二讲总结
    寒假学习日报(十七)
    《设计原本》阅读笔记(二)
    《机器学习十讲》第一讲总结
    寒假学习日报(十六)
  • 原文地址:https://www.cnblogs.com/Chaser-Eagle/p/3684764.html
Copyright © 2020-2023  润新知