`

如何在下拉列表中实现树状结构--asp实现的

 
阅读更多

找到原因了,是因为tab连接的字符串后边有空格,哎耽误我一晚上功夫!!

新的代码如下!!

  private void bindDDL(DropDownList DDL,int ParentID,string Tab) 
  {
  int TotalRecord = 0;
  int intCount = 0;
  QueryParam qp = new QueryParam();
  qp.Where = "Where G_Delete=0 and G_ParentID =" + ParentID ;
  qp.Orderfld = "G_ShowOrder";
  qp.OrderType = 0;
  ArrayList lst = BusinessFacade.sys_GroupList(qp, out TotalRecord);

  foreach (sys_GroupTable Row in lst)
  {
  intCount++;
  if (Tab.IndexOf("├") > -1)
  {
  Tab = Tab.Replace("├", "│");
  }

  if (Tab.IndexOf("└") > -1)
  {
  Tab = Tab.Replace("└", "");
  }

  if (lst.Count == intCount)
  {
  Tab = Tab + "└";
  }
  else
  {
  Tab = Tab + "├";
  }

  DDL.Items.Add(new ListItem(Tab + Row.G_CName, Row.GroupID.ToString()));
  bindDDL(DDL, Row.GroupID, Tab);
  Tab = Tab.Remove(Tab.Length - 1, 1);
  }
  } 




产生效果如下:

<select name="ctl00$PageBody$kingDDLGroupID1$DropDownList1" id="ctl00_PageBody_kingDDLGroupID1_DropDownList1">
<option value="1">├环保科</option>
<option value="2">│├采油1矿</option>
<option value="6">││├采油1矿1队</option>
<option value="7">││├采油1矿2队</option>
<option value="9">││├采油1矿4队</option>
<option value="8">││└采油1矿3队</option>
<option value="3">│├采油2矿</option>
<option value="10">││├采油2矿1队</option>
<option value="11">││├采油2矿2队</option>
<option value="12">││├采油2矿3队</option>
<option value="13">││└采油2矿4队</option>
<option value="4">│├采油3矿</option>
<option value="5">│└采油4矿</option>
<option value="14">├合同科</option>
<option value="15">└财务科</option>

</select>
基本实现了我的要求

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics