public void AddTree(int ParentID,TreeNode pNode) 
{
    DataView dvTree = new DataView(ds.Tables[0]);
    //过滤ParentID,得到当前的所有子节点
   dvTree.RowFilter =  "[PARENTID] = " + ParentID;
   foreach(DataRowView Row in dvTree) 
{
if(pNode == null) 
{    //'̀添加根节点
TreeNode Node = TreeView1.Nodes.Add(Row["ConText"].ToString());
AddTree(Int32.Parse(Row["ID"].ToString()),Node);    //再次递归

else 
{   //添加当前节点的子节点
TreeNode Node =  pNode.Nodes.Add(Row["ConText"].ToString());
AddTree(Int32.Parse(Row["ID"].ToString()),Node); //再次递归
}
}
}
这是一段创建树形结构的代码,系统提示":无法从“string”转换为“Microsoft.Web.UI.WebControls.TreeNode”大家帮忙看看"TreeNode Node = TreeView1.Nodes.Add(Row["ConText"].ToString());"这句话怎么解决这个问题.

解决方案 »

  1.   

    先构造TreeNode实例,然后将它加到节点结合中去
    TreeNode Node = new TreeNode(Row["ConText"].ToString);
    TreeView1.Nodes.Add(Node);
      

  2.   

    to:pupo
    如果那样又出现了下面的问题
    重载“TreeNode”方法未获取“1”参数
      

  3.   

    你看看TreeNode的构造函数嘛,我只是随便写了下
      

  4.   

    刚才是ToString方法忘记打括号了
    应该是
    TreeNode Node = new TreeNode(Row["ConText"].ToString());
    TreeView1.Nodes.Add(Node);
    也可以用无参数的构造函数,然后给它的text属性赋值
    TreeNode Node = new TreeNode();
    Node.Text = Row["ConText"].ToString();
      

  5.   

    查一下node的属性是怎样设置的
      

  6.   

    to:pupo
    用第一种方法:TreeNode函数不能有参数
    用每二种方法什么也取不出来
    不好意思,麻烦你再帮帮忙!!谢谢了