DropDownList无限级分类(灵活控制显示形式)
2011-05-26 14:32
323 查看
主要使用递归实现,数据库结构:
最终样式:
最终样式:
protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { BindDrpClass(); } } /// <summary> /// 绑定顶级分类 /// </summary> private void BindDrpClass() { DataTable dt = GetClassList("").Tables[0]; ddlClass.Items.Clear(); ddlClass.Items.Add(new ListItem("添加根栏目", "0")); DataRow[] drs = dt.Select("ParentID= " + 0); foreach (DataRow dr in drs) { string classid = dr["ClassID"].ToString(); string classname = dr["ClassName"].ToString(); //顶级分类显示形式 classname = "╋" + classname; ddlClass.Items.Add(new ListItem(classname, classid)); int sonparentid = int.Parse(classid); string blank = "├"; //递归子分类方法 BindDrpNode(sonparentid, dt, blank); } ddlClass.DataBind(); } /// <summary> /// 绑定子分类 /// </summary> /// <param name="parentid"></param> /// <param name="dt"></param> /// <param name="blank"></param> private void BindDrpNode(int parentid, DataTable dt, string blank) { DataRow[] drs = dt.Select("ParentID= " + parentid); foreach (DataRow dr in drs) { string classid = dr["ClassID"].ToString(); string classname = dr["ClassName"].ToString(); classname = blank + classname; ddlClass.Items.Add(new ListItem(classname, classid)); int sonparentid = int.Parse(classid); string blank2 = blank + "─"; BindDrpNode(sonparentid, dt, blank2); } }
/// <summary> /// 数据访问 /// </summary> /// <param name="strWhere">SQL条件</param> /// <returns></returns> public DataSet GetClassList(string strWhere) { StringBuilder strSql = new StringBuilder(); strSql.Append("select * from tb_Class "); if (strWhere.Trim() != "") { strSql.Append(" where " + strWhere); } return DAL.SqlHelper.ExecuteDataset(DAL.SqlHelper.ConnString, CommandType.Text, strSql.ToString()); }
相关文章推荐
- DropDownList无限级分类(灵活控制显示形式)
- DropDownList无限级分类(灵活控制显示形式)
- DropDownList无限级分类(灵活控制显示形式)
- DropDownList无限级分类(灵活控制显示形式)
- DropDownList无限级分类(灵活控制显示形式)
- DropDownList无限级分类(灵活控制显示形式) ASP.net|论坛 - 深博技术论坛 - Powered by Discuz!NT
- DropDownList无限级分类(灵活控制显示形式)ASP.net|论坛
- DropDownList无限级分类(灵活控制显示形式)
- DropDownList无限级分类(灵活控制显示形式)
- DropDownList无限级分类(灵活控制显示形式)
- 转载笔记:DropDownList无限级分类(灵活控制显示形式)
- DropDownList无限级分类(灵活控制显示形式)
- 笔记:DropDownList无限级分类(灵活控制显示形式)
- 笔记:DropDownList无限级分类(灵活控制显示形式)
- DropDownList 无限级分类 树状显示 (递归)
- Unity实现RawImage图片显示视频 、灵活配置控制视频播放
- 关于android BaseAdapter 中如何灵活控制listview 是否显示,是否有事件触发
- 如何通过动态生成Html灵活实现DataGrid分类统计的界面显示功能
- 用dropdownlist控制gridview某个单元格的显示与否
- 登山-C#-获得年份月份,检验TextBox输入的是否为数字,将字符串转数字控制小数点精度,ComboBox DropDownList形式下设置初始值