用递归在Dropdownlist中显示树状结构
2006-04-03 17:29
423 查看
建立一个aspx页面,copy如下代码
html代码
<HTML>
<HEAD>
<title>WebForm9</title>
</HEAD>
<body>
<form id="Form1" method="post" runat="server">
<asp:DropDownList id="Dropdownlist3" runat="server" Width="352px"></asp:DropDownList></form>
</body>
</HTML>
cs代码
public class WebForm3 : System.Web.UI.Page
{
protected System.Web.UI.WebControls.DropDownList Dropdownlist3;
private void Page_Load(object sender, System.EventArgs e)
{
DataTable dt = GetData();
BindData(dt,0);
}
private void BindData(DataTable dt,int id)
{
DataView dv = new DataView(dt);
dv.RowFilter = "parentid = " + id.ToString();
int m=0;
foreach(DataRowView drv in dv)
{
m++;
string blank="";
if(id!=0)
{
for(int i=0;i<m;i++)
{
blank+="空格";
}
}
ListItem li=new ListItem();
li.Text=blank+drv["id"].ToString()+drv["name"].ToString();
li.Value=drv["id"].ToString();
this.Dropdownlist3.Items.Add(li);
BindData(dt,Convert.ToInt32(drv["id"]));
}
}
GetData#region GetData
private DataTable GetData()
{
DataTable dt;
dt = new DataTable();
dt.Columns.Add("id");
dt.Columns.Add("parentid");
dt.Columns.Add("name");
DataRow dr;
dr = dt.NewRow();
dr["id"] = "1";
dr["parentid"] = "0";
dr["name"] = "a";
dt.Rows.Add(dr);
dr = dt.NewRow();
dr["id"] = "2";
dr["parentid"] = "1";
dr["name"] = "b";
dt.Rows.Add(dr);
dr = dt.NewRow();
dr["id"] = "3";
dr["parentid"] = "1";
dr["name"] = "c";
dt.Rows.Add(dr);
dr = dt.NewRow();
dr["id"] = "4";
dr["parentid"] = "2";
dr["name"] = "d";
dt.Rows.Add(dr);
dr = dt.NewRow();
dr["id"] = "5";
dr["parentid"] = "2";
dr["name"] = "e";
dt.Rows.Add(dr);
dr = dt.NewRow();
dr["id"] = "6";
dr["parentid"] = "3";
dr["name"] = "f";
dt.Rows.Add(dr);
return dt;
}
#endregion
Web Form Designer generated code#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}
/**//**//**//// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
}
相关文章推荐
- 用递归在Dropdownlist中显示树状结构(连数据库)
- 用递归在Dropdownlist中显示树状结构
- 用递归在Dropdownlist中显示树状结构
- 用递归在Dropdownlist中显示树状结构(连数据库)
- 递归在Dropdownlist中显示树状结构
- 在jsp页面中实现递归显示树状结构(树状bbs)
- DropDownList 无限级分类 树状显示 (递归)
- CTE递归应用,树状结构,查询所有子部门、子部门数量、按层级显示部门名称
- C#递归在dropdownlist显示树状
- 通过递归方法 将DataTable中的树状数据信息 按树状格式显示在DropDownList中
- 树状结构显示之递归练习并说明写递归代码的技巧
- 用树状结构显示BBS的帖子及其回帖,使用递归方法.
- C#递归在dropdownlist显示树状(转)
- 通过递归方法 将DataTable中的树状数据信息 按树状格式显示在DropDownList中
- ASP 递归显示无穷树状结构, 下拉框中显示树状效果
- 在下拉列表框中显示树状结构
- [转]在视图中使用递归生成树状结构
- 关于IE能显示树状结构,而firefox却不能
- 递归打印目录的树状结构
- mysql中递归树状结构<转>