广杰博客

  • 首页
  • IT资讯
  • IT运维
  1. 首页
  2. IT运维
  3. 正文

DropDownList实现树形结构显示

04/01/2011 1039点热度 0人点赞 0条评论

public System.Web.UI.WebControls.DropDownList AddDropDownList (System.Web.UI.WebControls.DropDownList droplist, int ParentID, ListItem plist)
{
string NodeId = "ID";
string ParentId = "ParentId";
string NodeName = "Name";

//DataSet dsFlowType = myData.GetFlowTypeDS();
DataView dvTree = new DataView(dsFlowType.Tables[0]);

//过滤ParentId,得到当前的所有子节点
dvTree.RowFilter = ParentId + " = " + ParentID.ToString();
foreach (DataRowView drv in dvTree)
{
//-----------------------------------------
int depth = 0;
int NodeID = Convert.ToInt32(drv[NodeId]); ;
Depth(NodeID, ref depth); //计算当前节点深度

string blank = "";
if (ParentID != 0)
{
for (int i = 1; i <= depth; i++) { blank += "|-"; } } //----------------------------------------- ListItem list = new ListItem(); list.Text = blank + drv[NodeName].ToString().Trim(); list.Value = drv[NodeId].ToString().Trim(); droplist.Items.Add(list); //***注意区别:根节点 AddDropDownList(droplist, Int32.Parse(drv[NodeId].ToString().Trim()), list); //递归 } return droplist; } //计算当前节点深度 public int Depth(int NodeID, ref int depth) { string NodeId = "ID"; string ParentId = "ParentId"; //DataSet dsFlowType = myData.GetFlowTypeDS(); DataView dvTree = new DataView(dsFlowType.Tables[0]); //过滤ParentId,得到当前的所有父节点 dvTree.RowFilter = NodeId + " = " + NodeID.ToString(); foreach (DataRowView drv in dvTree) { int ID = Convert.ToInt32(drv[ParentId]); if (ID != 0) { depth += 1; Depth(ID, ref depth); //递归 } } return depth; }

标签: 暂无
最后更新:01/01/1970

guangjie

这个人很懒,什么都没留下

点赞
下一篇 >

文章评论

您需要 登录 之后才可以评论
最新 热点 随机
最新 热点 随机
Red Hat Enterprise Linux 9 发布,大量组件升级 windows10 家庭版添加hyper-v虚拟机组件 Red Hat Enterprise Linux 8.5 GA 发布 Rocky Linux 8.4 GA正式版发布下载 Rocky Linux 8.3 首个候选版本发布 CentOS 8.3 (2011) ISO镜像下载发布 CentOS Linux 落幕 CentOS Stream 上位 CentOS Linux 7.9 (2009) iso镜像下载 Windows 10 2020年10月更新ISO下载 ubuntu ssh通过密钥登陆服务器
Red Hat Enterprise Linux 9 发布,大量组件升级windows10 家庭版添加hyper-v虚拟机组件
SQL Server 2012 RTM版本发布 Rocky Linux 8.3 首个候选版本发布 解决php出现The FastCGI process exceeded configured activity timeout 批处理设置网络连接 hyper-v创建内部nat网络 php中的Cannot send session cache limiter问题 docker镜像私有仓库harbor服务器安装部署 Linux常用网络社区资源 serv-u提权防范 9166.biz Arp木马病毒专杀
标签聚合
springboot linux Windows Server 2012下载 Hyper-V Windows Server 2012 php_curl redhat nginx
友情链接
  • linux运维
  • 郑州SEO

COPYRIGHT © 2021 gjie.cn. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

豫ICP备07002435号-8