DropDownList弹出树状图
using System;
using System.Collections.Generic;
using System.Web;
using System.Data;
using System.Data.OleDb;
using System.Web.UI.WebControls;
/// <summary>
///Common 的摘要说明
/// </summary>
public class Common
{
public Common()
{
//
//TODO: 在此处添加构造函数逻辑
//
}
//获取第一个父类
public static List<ProductFLEntiy> GetList()
{
List<ProductFLEntiy> list = new List<ProductFLEntiy>();
using (OleDbDataReader ord = SqlHelper.ExecuteReader("select * from productfl where ParentID=0"))
{
while (ord.Read())
{
ProductFLEntiy info = new ProductFLEntiy();
info.ID = (int)ord["ID"];
info.ParentID = (int)ord["ParentID"];
info.ProFLName = ord["ProFLName"].ToString();
list.Add(info);
}
}
return list;
}
//通过父类ID来获取相关信息
public static List<ProductFLEntiy> GetParentIDList(int ParentID)
{
List<ProductFLEntiy> list = new List<ProductFLEntiy>();
using (OleDbDataReader ord = SqlHelper.ExecuteReader("select * from productfl where ParentID="+ParentID))
{
while (ord.Read())
{
ProductFLEntiy info = new ProductFLEntiy();
info.ID = (int)ord["ID"];
info.ParentID = (int)ord["ParentID"];
info.ProFLName = ord["ProFLName"].ToString();
list.Add(info);
}
}
return list;
}
public static void BindClass(DropDownList dro)
{
List<ProductFLEntiy> list = GetList();
foreach (ProductFLEntiy model in list)
{
ListItem li = new ListItem();
li.Text = "╋" + model.ProFLName;
li.Value = model.ID.ToString();
dro.Items.Add(li);
BindChild(dro,model.ID, "├──");
}
}
public static void BindChild(DropDownList dro,int ParentID, string separator)
{
List<ProductFLEntiy> list = GetParentIDList(ParentID);
foreach (ProductFLEntiy model in list)
{
ListItem li = new ListItem();
li.Text = separator + model.ProFLName;
li.Value = model.ID.ToString();
dro.Items.Add(li);
string separator_ = separator + "───";
BindChild(dro,model.ID,separator_);
}
}
}
public class ProductFLEntiy
{
public ProductFLEntiy()
{
//
//TODO: 在此处添加构造函数逻辑
//
}
private int _ID;
public int ID
{
get { return _ID; }
set { _ID = value; }
}
private int _ParentID;
public int ParentID
{
get { return _ParentID; }
set { _ParentID = value; }
}
private string _ProFLName;
public string ProFLName
{
get { return _ProFLName; }
set { _ProFLName = value; }
}
}