递归
public void BindSys_Location()
{
StringBuilder sb = new StringBuilder();
DataTable dt = location.GetListBypId(0);
AppendChildNode(dt, sb);
}
/// <summary>
/// 拼装子节点HTML
/// </summary>
/// <param name="drParent">父节点数据行</param>
/// <param name="sb">HTML字符串</param>
public void AppendChildNode(DataTable dtParent, StringBuilder sb)
{
int j = 0;
sb.Append("<ul>");
for (int i = 0; i < dtParent.Rows.Count; i++)
{
sb.AppendFormat("<li class=\"Opened\"><a href=\"Sys_Location_List.aspx?id={1}\">{0}</a>", dtParent.Rows[i]["name"].ToString(), dtParent.Rows[i]["Id"].ToString());
DataTable dt = location.GetListBypId(int.Parse(dtParent.Rows[i]["Id"] + ""));
if (dt.Rows.Count > 0)
{
//sb.Append("这里拼包括子节点的HTML开始节点");
//foreach (DataRow row in dt.Rows)
//{
//递归调用拼装子节点HTML
AppendChildNode(dt, sb); ;
//}
//sb.Append("这里拼包括子节点的HTML结束节点");
}
else
{
//sb.Append("这里拼不包括子节点的HTML节点");
}
sb.Append("</li>");
}
sb.Append("</ul>");
LiteralCNLTreeMenu.Text = sb.ToString();
}