msdn地址:http://www.microsoft.com/china/community/Column/30.mspx
=======================================================================
错误:Compiler Error Message: CS0104: 'TreeNode' is an ambiguous reference between 'System.Web.UI.WebControls.TreeNode' and 'Microsoft.Web.UI.WebControls.TreeNode'Source Error:
Line 50: 
Line 51:         //递归添加树的节点
Line 52:         public void AddTree(int ParentID, TreeNode pNode)
Line 53:         {
Line 54:             DataSet ds = (DataSet)this.ViewState["ds"];
 
Source File: f:\program\SWT\OA\OA\UDS\WebForm.aspx.cs    Line: 52 
===================================非常感谢!
万分感激!
恳请指教!=====================================c#代码如下
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using Microsoft.Web.UI.WebControls;
using System.Data.SqlClient;
namespace TreeCS
{
/// 
/// WebForm1 的摘要说明
/// 
public class WebForm1 : System.Web.UI.Page
{
protected Microsoft.Web.UI.WebControls.TreeView TreeView1;

private void Page_Load(object sender, System.EventArgs e)
{
// 定义数据库连接
SqlConnection CN = new SqlConnection();
try 
{
//初始化连接字符串
CN.ConnectionString=
"data source=pmserver;initial catalog=Bench;persist security info=False;user id=sa;Password=sa;";
CN.Open(); SqlDataAdapter adp = new SqlDataAdapter("select * from tbTree",CN);
DataSet ds=new DataSet();
adp.Fill(ds);
this.ViewState["ds"]=ds; 
}
catch (Exception ex)
{
Session["Error"] = ex.ToString();
Response.Redirect("error.aspx");       //̀跳转程序的公共错误处理页面
}
finally 
{
CN.Close();
}
//调用递归函数,完成树形结构的生成
AddTree(0, (TreeNode)null);
} //递归添加树的节点
public void AddTree(int ParentID,TreeNode pNode) 
{
DataSet ds=(DataSet) this.ViewState["ds"]; 
DataView dvTree = new DataView(ds.Tables[0]);
//过滤ParentID,得到当前的所有子节点
dvTree.RowFilter =  "[PARENTID] = " + ParentID; foreach(DataRowView Row in dvTree) 
{
TreeNode Node=new TreeNode() ;
if(pNode == null) 
{    //添加根节点
Node.Text = Row["ConText"].ToString();
TreeView1.Nodes.Add(Node);
Node.Expanded=true;
AddTree(Int32.Parse(Row["ID"].ToString()), Node);    //再次递归

else 
{   //̀添加当前节点的子节点
Node.Text = Row["ConText"].ToString();
pNode.Nodes.Add(Node);
Node.Expanded = true;
AddTree(Int32.Parse(Row["ID"].ToString()),Node);     //再次递归
}
}                   
}             #region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}

/// <summary>
///设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容
/// </summary>
private void InitializeComponent()
{    
this.Load += new System.EventHandler(this.Page_Load); }
#endregion
}
}====================================

解决方案 »

  1.   

    public void AddTree(int ParentID, Microsoft.Web.UI.WebControls.TreeNode pNode)
      

  2.   

    TreeNode 在.net 2.0里已经是标准的控件了,属于System.Web.UI.WebControls名称空间,如果在vs2005里,会产生歧义,因此需要指明名称空间。
      

  3.   

    如果是.NET 2.0环境,还是使用标准的TreeView控件吧 
    http://msdn2.microsoft.com/zh-cn/library/system.web.ui.webcontrols.treenode(VS.80).aspx
      

  4.   

    Microsoft.Web.UI.WebControls.TreeNode  pNode
    试了没有用啊 
    问题还是没有解决,
    我是想在asp.net2.0中把TreeView做成自定义控件,请问前辈能提供一些实例让我学习吗,谢谢!