ddl无限绑定栏目(递归实现)

   数据库中的表NewsKind

NewsKindID int
NewsKindName varchar
ParentID int   

SqlConnection conn = new SqlConnection (System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"]);
    conn.Open();
    string sqlstr = "select NewsKindID, NewsKindName,ParentID from NewsKind where ParentID=0 order by NewsKindID asc";
    SqlCommand cmd = new SqlCommand(sqlstr,conn);
    SqlDataReader dr = cmd.ExecuteReader();
    while(dr.Read())
    {
     ddlParentNewsKind.Items.Add(new ListItem(("┣")+dr["NewsKindName"].ToString(),dr["NewsKindID"].ToString()));
     if(dr["NewsKindID"].ToString()!=dr["ParentID"].ToString())
     {
      smallClass(long.Parse(dr["NewsKindID"].ToString()),"┃");
     }
    }

private void smallClass(long classId,string tempStr)
  {
   SqlConnection conn = new SqlConnection (System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"]);
   conn.Open();
   string sqlstr = "select NewsKindID, NewsKindName,ParentID from NewsKind where ParentID="+classId+" order by NewsKindID asc";
   SqlCommand cmd = new SqlCommand(sqlstr,conn);
   SqlDataReader dr = cmd.ExecuteReader();
   while(dr.Read())
   {
    ddlParentNewsKind.Items.Add(new ListItem((tempStr+"┣")+dr["NewsKindName"].ToString(),dr["NewsKindID"].ToString()));
    if(dr["NewsKindID"].ToString()!=dr["ParentID"].ToString())
    {
     tempStr =tempStr +"┃";
     smallClass(long.Parse(dr["NewsKindID"].ToString()),tempStr);
    }
   }
  }

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值