http://singlepine.cnblogs.com/articles/353453.html        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"]));
            }  
        }===========================================
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;
===========================================
怎么显示出来的结果不对的,那里出问题了??

解决方案 »

  1.   

    应该是:1a
    空格2b
    空格空格4d
    空格空格5e
    空格3c
    空格空格6f
    结果是:
    1a
    空格2b
    空格4d
    空格空格5e
    空格空格3c
    空格6f
      

  2.   

    应该是:1a
    空格2b
    空格空格4d
    空格空格5e
    空格3c
    空格空格6f结果是:
    1a
    空格2b
    空格4d
    空格空格5e
    空格空格3c
    空格6f
      

  3.   

    你第二次递归的时候照样int m=0初始了,那当然没有空格了,把他放外边