但是在JavaScript中调用又没错,请问这个函数在哪里可以查到?我在MSDN上面也没找到!还有像  getTreeNode  这样的,好像TreeView本身根本就没有这样的函数,但是在JAVAScript中可以调用?这是怎么一回事?

解决方案 »

  1.   

    刚好我接到一个项目让我写这个用动态树进行权限控制,这是创建节点的方法,你看看对你有什么启示:
    //用递归的方法显示树形目录
    //为树DataSet
    private void CreateDataSet()
    {
    string strcn=ConfigurationSettings.AppSettings["dsn"];
    cn=new SqlConnection(strcn);
    cn.Open();
    string strSql = "SELECT ID, Name, ParentID, OrderId FROM tbTree ORDER BY OrderId";
    SqlDataAdapter myAdapter = new SqlDataAdapter(strSql,cn);
    myAdapter.Fill(ds,"subTree");
    cn.Close();
    } //用递归的方法显示树形目录
    private void CreateTree(Microsoft.Web.UI.WebControls.TreeNodeCollection TNCs,string strParentId)
    {
    Microsoft.Web.UI.WebControls.TreeNode tmpTNCs = new Microsoft.Web.UI.WebControls.TreeNode();
    DataView dv = new DataView();
    dv.Table = ds.Tables[0];
    string strID;
    if (strParentId == "")
    {
    dv.RowFilter = "ParentID is null";
    }
    else
    {
    dv.RowFilter = "ParentID = "+strParentId;
    }
    foreach (DataRowView drv in dv)
    {
    tmpTNCs = new Microsoft.Web.UI.WebControls.TreeNode(); //定义结点
    strID = drv["ID"].ToString();
    tmpTNCs.ID = strID; //定义结点ID
    tmpTNCs.Text = drv["Name"].ToString(); //定义结点文字
    //tmpTNCs.ImageUrl=<a href="http://localhost/images/folderClose.gif";
    tmpTNCs.ImageUrl = "images/folderClose.gif"; //定义图片
    tmpTNCs.ExpandedImageUrl = "images/folderOpen.gif"; //定义打开的图片
    tmpTNCs.NavigateUrl = "main.aspx?ID="+strID+"&ParentID="+drv["ParentID"].ToString(); //定义结点联接
    TNCs.Add(tmpTNCs); //添加结点
    CreateTree(TNCs[TNCs.Count-1].Nodes,strID); //递归调用 //选定某个结点
    if (Request.Params["id"]!=null)
    {
    if (strID == Request.Params["Id"].ToString())
    {
    //放置一个绑定数据
    Label1.Text=strID;
    //将选定结点的所有上级结点的Expanded属性全设为true,即展开结点
    string strNodeIndex = TNCs[TNCs.Count-1].GetNodeIndex();
    string[] strExpandLevel = strNodeIndex.Split('.');
    Microsoft.Web.UI.WebControls.TreeNode TN = this.TreeView1.Nodes[int.Parse(strExpandLevel[0])];
    TN.Expanded = true;
    for (int i=1;i<strExpandLevel.Length;i++)
    {
    int ii = int.Parse(strExpandLevel[i]);
    TN = TN.Nodes[ii];
    TN.Expanded = true;
    }
    //选定结点
    this.TreeView1.SelectedNodeIndex = strNodeIndex;
    }
    }
    }
    }
      

  2.   

    我在编程的时候,没有调用函数,这个函数是可以实现的。百分百,如果还有什么要调试不成功,可以直接问我,msn为:[email protected]
    可以为你继续解答,哈哈。这两天就干了调试方法的事情,正好用上,还有点成就感:)