用递归在Dropdownlist中显示树状结构
来源:互联网 发布:企业金融数据库 编辑:程序博客网 时间:2024/05/29 15:04
建立一个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代码<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>
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
}
{
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中显示树状结构(连数据库)
- 用递归在Dropdownlist中显示树状结构 http://www.cnblogs.com/singlepine/archive/2006/03/19/353453.html
- 通过递归方法 将DataTable中的树状数据信息 按树状格式显示在DropDownList中
- 在DropDownList中显示树形结构
- 在DropDownList中显示树形结构
- 在DropDownList中显示树形结构
- 在jsp页面中实现递归显示树状结构(树状bbs)
- DropDownList中显示树状数据
- DropDownList 无限级分类 树状显示 (递归)
- ASP 递归显示无穷树状结构, 下拉框中显示树状效果
- mvc在视图中使用递归生成树状结构
- 在视图中使用递归生成树状结构
- mvc在视图中使用递归生成树状结构
- mysql中递归树状结构
- mysql中插入记录的同时怎样返回它的id值
- 支个锅灶,好好学习
- 导出导入Excel(DataSet,DataGrid)
- 给DataGrid添加滚动条并固定表头
- 什么是WINFORM 什么是WEBFORM
- 用递归在Dropdownlist中显示树状结构
- 转发和重定向的区别
- 水文站实测流量计算程序
- JavaScript调用Web Services实现无刷新三联动
- 深入剖析JSP和Servlet对中文的处理
- 墨攻
- 根据SQL语句生成文本文件
- 每天一句(-)
- 如何将枚举绑定到DropDownList上