我用递归的方式生成菜单,原来是用树控件画,现在想用<div><span>等控件自己画一个,可是,不知道如何写?代码如下:
protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            tree_load("0);
        }
    }
      protected void tree_load(string strValue)
    {
        DataTable dtbMenu= new DataTable();
        dtbMenu= DataSource.execQuery();//取值        for (int i = 0; i < dt.Rows.Count; i++)
        {
                if (rootnode == "1")//根节点
                {
                   <div title="<%=dtbMenu.Rows[i]["MenuName"].ToString()%>" id="_div_<%=dtbMenu.Rows[i]["MenuId"].ToString()%>" class="nav_column_dark" onclick="checkNav('<%=dtbMenu.Rows[i]["MenuId"].ToString()%>')"> 
<span style="height:100%;padding-left:5px;padding-top:5px;"><%=dtbMenu.Rows[i]["MenuName"].ToString()%></span></div>
<div title="<%=dtbMenu.Rows[i]["MenuName"].ToString()%>" id="div_<%=dtbMenu.Rows[i]["MenuId"].ToString()%>" > 
                    tree_load(dt.Rows[i][0].ToString());
                }
                else//子节点
                {
<span style="height:100%;padding-left:5px;padding-top:5px;"><a href="<%=dtbMenu.Rows[i]["Flinkfile"].ToString()%>" target="main" title="<%=dtbMenu.Rows[i]["MenuName"].ToString()%>"><%=dtbMenu.Rows[i]["MenuName"].ToString()%></a></span><br />
                    tree_load(dt.Rows[i][0].ToString());
                }
            }
if ((i != 0 && i!=dtbMenu.Rows.Count-1 && dtbMenu.Rows[i+1]//一个菜单结尾["FParentID"].ToString().Equals("0"))|| (i==dtbMenu.Rows.Count-1))
    {  </div>
 
    }
        }