怎么用(一个)droplist显示无限级菜单,并且在外观上表现出层次结构??

lasker 2006-10-17 07:24:33
http://www.f139.com:8080/Article_Class2.asp?ClassID=114 的droplist是一个例子!
!!
...全文
116 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
lasker 2006-10-18
  • 打赏
  • 举报
回复
daishengs(横舟摆渡)的代码解决了我的问题 呵呵~

不过还是没我给出的那个层次来的清晰 !
daishengs 2006-10-17
  • 打赏
  • 举报
回复
private void BiudTree()
{
Units sm=new Units();
DataTable dt=sm.GetList("DelSign='0'").Tables[0];
this.dopUnits.Items.Clear();
//加载树
//this.dopUnits.Items.Add(new ListItem("根目录","0"));
DataRow [] drs = dt.Select("PID= " + 0);


foreach( DataRow r in drs )
{
string nodeid=r["ID"].ToString();
string text=r["UnitName"].ToString();
//string parentid=r["ParentID"].ToString();
//string permissionid=r["PermissionID"].ToString();
text="╋"+text;
this.dopUnits.Items.Add(new ListItem(text,nodeid));
int sonparentid=int.Parse(nodeid);
string blank="├";

BindNode( sonparentid, dt,blank);

}
this.dopUnits.DataBind();

}
private void BindNode(int parentid,DataTable dt,string blank)
{
DataRow [] drs = dt.Select("PID= " + parentid );

foreach( DataRow r in drs )
{
string nodeid=r["ID"].ToString();
string text=r["UnitName"].ToString();
//string permissionid=r["PermissionID"].ToString();
text=blank+"『"+text+"』";

this.dopUnits.Items.Add(new ListItem(text,nodeid));
int sonparentid=int.Parse(nodeid);
string blank2=blank+"─";


BindNode( sonparentid, dt,blank2);
}
}


表结构:ID UnitName PID
根目录记录:1 根目录 0
haidazi 2006-10-17
  • 打赏
  • 举报
回复
应该不难,既然能递归出来就用动态构造下拉列表
lasker 2006-10-17
  • 打赏
  • 举报
回复
也就是我无法表现出好看的层次结构~~~~
lasker 2006-10-17
  • 打赏
  • 举报
回复
我会低归出他们 并且按结构显示但是 不会显示 线条(-_-|||)

也就是我弄出来的是这样的:
a
a1
a2
b
b1
b2
b3

我想要的是:
a
a1
a2
b
b1
b2
b3
.....的无限级菜单~
lasker 2006-10-17
  • 打赏
  • 举报
回复
在数据源上加??
zhuyt0828 2006-10-17
  • 打赏
  • 举报
回复
只是在数据源上加上了几条横线
xingyaohua 2006-10-17
  • 打赏
  • 举报
回复
up
sunjay117 2006-10-17
  • 打赏
  • 举报
回复
忘了说了是刍建的
sunjay117 2006-10-17
  • 打赏
  • 举报
回复
很简单,用sqlserver斑竹的自定义函数就行了
或者自己用递归实现一下

62,047

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧