大虾们,麻烦帮我看看到底是什么原因啊,对foreach循环不是很懂,希望能帮我解决下。谢谢了。private void BiudTree()
    {
        YgmSystem.BLL.SysManage sm = new YgmSystem.BLL.SysManage();
        DataTable dt = sm.GetTreeList("").Tables[0];
        this.listTarget.Items.Clear();
        //加载树
        this.listTarget.Items.Add(new ListItem("根目录", "0"));
        DataRow[] drs = dt.Select("ParentID= " + 0);
        foreach (DataRow r in drs)
        {
            string nodeid = r["NodeID"].ToString();
            string text = r["Text"].ToString();
            //string parentid=r["ParentID"].ToString();
            //string permissionid=r["PermissionID"].ToString();
            text = "╋" + text;
            this.listTarget.Items.Add(new ListItem(text, nodeid));
            int sonparentid = int.Parse(nodeid);
            string blank = "├";            BindNode(sonparentid, dt, blank);        }
        this.listTarget.DataBind();    }
    private void BindNode(int parentid, DataTable dt, string blank)
    {
        DataRow[] drs = dt.Select("ParentID= " + parentid);        foreach (DataRow r in drs)
        {
            string nodeid = r["NodeID"].ToString();
            string text = r["Text"].ToString();
            //string permissionid=r["PermissionID"].ToString();
            text = blank + "『" + text + "』";            this.listTarget.Items.Add(new ListItem(text, nodeid));
            int sonparentid = int.Parse(nodeid);
            string blank2 = blank + "─";
            BindNode(sonparentid, dt, blank2);
        }
    }