度取子类:
select * from tb_class where ParentId = @ClassId

解决方案 »

  1.   

    谢谢vitamin_ok(New水水)
    能再说详细点吗
      

  2.   

    you can just select everything out and manually create ListItems, for example (didn't try, so it might not work):
    void AddListItem(DropDownList ddl, DataTable dt, int ParentID, string Tab)
    {  
      DataRow[] drs = dt.Select(String.Format("ParentID = {0}", ParentID));
      foreach (DataRow dr in drs)
      {
           ddl.Items.Add(new ListItem(Tab+dr["ClassName"].ToString(), dr["ClassID"].ToString()));
           AddListItem(ddl, dt, (int)dr["ClassID"], Tab + " ")
      }
    }then in your code, callDataTable dt = ....;//select * from tb_class AddListItem(YourDropDownList, dt, 0, "");
      

  3.   

    private void CreateDownList(System.Web.UI.WebControls.DropDownList ddlist, int Pid)
    { SqlCommand comm = new SqlCommand("select * from tb_class where ParentId = "+Pid ,_conn); SqlDataReader dr = comm.ExecuteReader(); while(dr.Read())
    {
    ddlist.Items.Add(dr["ClassName"]);
    SqlCommand tem = new SqlCommand("select count(*) from tb_class where ParentId="+dr["ClassId"],_conn);
    if((int)tem.ExecuteScalar()>0)
    {
    CreateDownList(ddlist,dr["ClassId"]);
    } }
    }还是思归老大写的有水平!