时间:2021-05-28
在网上找了很久也没有找到例子,没办法了,想偷懒也偷不成了,还是自己老老实实的写一个吧。不多废话,下面请看我做的详细方法。
1。无限级分类肯定要数据库支持啦,用户可以动态添加他们的分类嘛,下面是数据库的结构:
数据库主要有三个字段,这是最基本的了。第一个是主键,第二个是分类的名称了,第三个是父级目录id号。
2。成品的效果图:(大家最关心的是不是这个啊?看看是什么样子再看程序怎么吧)
看!!就长这个模样啦,这个层次关系就是上面那个数据所显示的结果。怎么样?还行吧。。。
3。最后就是提供程序咯,程序其实就是一个递归算法。
复制代码 代码如下:
privatevoidGetArticleCategory(stringpid)
{
SqlConnectionconn=newSqlConnection("server=.;database=test;uid=sa;pwd=;");
stringsql="selectArticlesgroup_id,GroupnamefromArticlesgroupwhereArticlesgroup_parent_id=@pidorderbyGroupname";
SqlCommandcmd=newSqlCommand(sql,conn);
SqlParameterPid=newSqlParameter("@pid",SqlDbType.Int);
Pid.Value=pid;
cmd.Parameters.Add(Pid);
conn.Open();
SqlDataReadersdr=cmd.ExecuteReader();
while(sdr.Read())
{
this.DropDownList1.Items.Add(newListItem(toadd+""+sdr[1].ToString(),sdr[0].ToString()));
toadd+="─┴";
this.GetArticleCategory(sdr[0].ToString());
toadd=toadd.Substring(0,toadd.Length-2);//开始这里没有处理好,层次关系显示不出来:)
}
sdr.Close();
conn.Close();
}
调用方法:在Page_Load里调用
复制代码 代码如下:
protectedvoidPage_Load(objectsender,EventArgse)
{
this.keyword.Attributes.Add("onfocus","if(this.value=='keykeykey'){this.value=''};");
if(!Page.IsPostBack)
{
this.GetArticleCategory("0");
}
this.DropDownList1.Items.Insert(0,newListItem("SearchAll","all"));
}
在类里边还要定义一个变量
复制代码 代码如下:
privatestringtoadd="├";
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了asp.net实现DropDownList,TreeView,ListBox的无限极分类目录树。分享给大家供大家参考,具体如下:#regionDr
本文实例讲述了Asp.Net实现无限分类生成表格的方法。分享给大家供大家参考,具体如下:数据结构monitor_groupmonitor_grp_idmonit
ASP.NET网站建设概述ASP.NET是一个统一的Web开发模型,它包括您使用尽可能少的代码生成企业级Web应用程序所必需的各种服务。ASP.NET作为.NE
本文实例讲述了ASP.NET中的用法,分享给大家供大家参考。具体如下:在ASP.NET的.aspx页面中,可以在代码标签中通过添加代码。其实,这里的代码和.cs
本文实例讲述了Asp.NET调用百度翻译的方法。分享给大家供大家参考。具体分析如下:Asp.NET调用百度翻译,如下图所示:HTML代码如下:复制代码代码如下: