我的数据结构是这样的?
id parid tile
1 0 a
2 1 b
3 1 c
4 2 d
5 2 e
6 3 f
. . .
. . .
. . .
我想出现这样的结果
1.................
2..............
4...........
5...........
3..............
6...........
结果是出现在dropdownlist下拉菜单中,请问怎样实现呢
---------------------------------------------------------------
private void Page_Load(object sender, System.EventArgs e)
{
DataTable dt = GetData();
GetString(dt,0);
}
private void GetString(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);
GetString(dt,Convert.ToInt32(drv["id"]));
}
}
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;
}
id parid tile
1 0 a
2 1 b
3 1 c
4 2 d
5 2 e
6 3 f
. . .
. . .
. . .
我想出现这样的结果
1.................
2..............
4...........
5...........
3..............
6...........
结果是出现在dropdownlist下拉菜单中,请问怎样实现呢
---------------------------------------------------------------
private void Page_Load(object sender, System.EventArgs e)
{
DataTable dt = GetData();
GetString(dt,0);
}
private void GetString(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);
GetString(dt,Convert.ToInt32(drv["id"]));
}
}
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;
}