using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.ComponentModel;
using System.Drawing;
using System.Web.SessionState;
using Microsoft.Web.UI.WebControls;
using System.Data.OracleClient;
namespace treeCS
{
///
/// report 的摘要说明
///
public partial class report : System.Web.UI.Page
{
protected Microsoft.Web.UI.WebControls.TreeView TreeView1; protected void Page_Load(object sender, EventArgs e)
{
//定义数据库连接
OracleConnection CN = new OracleConnection();
try
{
//初始化连接
CN.ConnectionString = "Data Source=test;User ID=gxjd;Password=gxjd;Unicode=True;";
CN.Open(); OracleDataAdapter adp = new OracleDataAdapter("select upunit,class from unit", 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 upunit,Microsoft.Web.UI.WebControls.TreeNode pNode)
{
DataSet ds = (DataSet) this.ViewState["ds"];
DataView dvTree = new DataView(ds.Tables[0]);
//过滤UPUNIT,得到当前所有子节点
dvTree.RowFilter = "[upunit] = " + upunit; foreach(DataRowView Row in dvTree)
{
TreeNode Node = new TreeNode();
if(pNode == null)
{
//添加根节点
Node.Text = Row["class"].ToString();
TreeView1.Nodes.Add(Node);
Node.Expanded = true;
AddTree(Int32.Parse(Row["upunit"].ToString()),Node);
}
else
{
//添加当前节点的子节点
Node.Text = Row["class"].ToString();
pNode.Nodes.Add(Node);
Node.Expanded = true;
AddTree(Int32.Parse(Row["upunit"].ToString()),Node);
}
}
} #region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN 该调用是ASP.NET Web 窗体设计器所必需的。
//
IntializeComponent();
base.OnInit(e);
} /// <summary>
/// 设计器支持所需要的方法 - 不要使用码编辑器修改
/// 此方法的内容
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
}
}编译错误
说明: 在编译向该请求提供服务所需资源的过程中出现错误。请检查下列特定错误详细信息并适当地修改源代码。 编译器错误信息: ASPNET: 请确保此代码文件中定义的类与“inherits”属性匹配,并且该类扩展的基类(例如 Page 或 UserControl)是正确的。源错误: 行 19: /// report 的摘要说明
行 20: ///
行 21: public partial class report : System.Web.UI.Page
行 22: {
行 23: protected Microsoft.Web.UI.WebControls.TreeView TreeView1;
源文件: c:\Inetpub\wwwroot\WebSite\report.aspx.cs 行: 21
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.ComponentModel;
using System.Drawing;
using System.Web.SessionState;
using Microsoft.Web.UI.WebControls;
using System.Data.OracleClient;
namespace treeCS
{
///
/// report 的摘要说明
///
public partial class report : System.Web.UI.Page
{
protected Microsoft.Web.UI.WebControls.TreeView TreeView1; protected void Page_Load(object sender, EventArgs e)
{
//定义数据库连接
OracleConnection CN = new OracleConnection();
try
{
//初始化连接
CN.ConnectionString = "Data Source=test;User ID=gxjd;Password=gxjd;Unicode=True;";
CN.Open(); OracleDataAdapter adp = new OracleDataAdapter("select upunit,class from unit", 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 upunit,Microsoft.Web.UI.WebControls.TreeNode pNode)
{
DataSet ds = (DataSet) this.ViewState["ds"];
DataView dvTree = new DataView(ds.Tables[0]);
//过滤UPUNIT,得到当前所有子节点
dvTree.RowFilter = "[upunit] = " + upunit; foreach(DataRowView Row in dvTree)
{
TreeNode Node = new TreeNode();
if(pNode == null)
{
//添加根节点
Node.Text = Row["class"].ToString();
TreeView1.Nodes.Add(Node);
Node.Expanded = true;
AddTree(Int32.Parse(Row["upunit"].ToString()),Node);
}
else
{
//添加当前节点的子节点
Node.Text = Row["class"].ToString();
pNode.Nodes.Add(Node);
Node.Expanded = true;
AddTree(Int32.Parse(Row["upunit"].ToString()),Node);
}
}
} #region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN 该调用是ASP.NET Web 窗体设计器所必需的。
//
IntializeComponent();
base.OnInit(e);
} /// <summary>
/// 设计器支持所需要的方法 - 不要使用码编辑器修改
/// 此方法的内容
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
}
}编译错误
说明: 在编译向该请求提供服务所需资源的过程中出现错误。请检查下列特定错误详细信息并适当地修改源代码。 编译器错误信息: ASPNET: 请确保此代码文件中定义的类与“inherits”属性匹配,并且该类扩展的基类(例如 Page 或 UserControl)是正确的。源错误: 行 19: /// report 的摘要说明
行 20: ///
行 21: public partial class report : System.Web.UI.Page
行 22: {
行 23: protected Microsoft.Web.UI.WebControls.TreeView TreeView1;
源文件: c:\Inetpub\wwwroot\WebSite\report.aspx.cs 行: 21
解决方案 »
- 这条语句该如何改写?
- winform数据绑定:如何快捷实现增和改?
- socket.connect在什么时候会报“通常每个套接字地址(协议/网络地址/端口)只允许使用一次”的异常?
- 急,急。在POCKET PC中如何访问远程数据库sql server 2000
- float 强制转换为 int 出错?
- 注册表不能写的问题
- CURL模拟登录路由
- 求Windows Forms程序模拟Asp的 post 完整程序
- datagridtextboxcolumn中,headertext的样式怎么设置?可不可以限定某一列是只读的??
- Regex.split问题(在线等待)
- 能否在PictureBox里面显示Form实例?
- 智能客户端发布后的问题 发布以后我修改应用程序的配置文件,客户端连接的时候报错 应用程序验证未成功,无法继续
{
Microsoft.Web.UI.WebControls.TreeNode tnode;
DataView dv=ds.Tables[0].DefaultView;
foreach(DataRowView drv in dv)
{
if (drv["nodeparentid"].ToString()==parentId)
{
tnode=new Microsoft.Web.UI.WebControls.TreeNode();
tnode.ID=drv["colid"].ToString();
tnode.Text=drv["nodename"].ToString();
tnode.NavigateUrl="javascript:getNodeText('"+drv["colid"].ToString()+"','"+drv["colname"].ToString()+"');";
Nds.Add(tnode);
InitTree(tnode.Nodes,drv["nodeid"].ToString(),ds);
}
}
}调用:InitTree(this.treeview1.nodes,"",ds)
说明:
建表格式
nodeid nodetext nodeparentid
a001 广东省 null
a002 广州市 a001
a003 中山大道 a002
a004 湖北省 null
a005 武汉 a004显示树为:
广州省
广州市
中山大道
湖北省
武汉
见下面:
private void InitTree(Microsoft.Web.UI.WebControls.TreeNodeCollection Nds,string parentId,DataSet ds)
{
Microsoft.Web.UI.WebControls.TreeNode tnode;
DataView dv=ds.Tables[0].DefaultView;
foreach(DataRowView drv in dv)
{
if (drv["nodeparentid"].ToString()==parentId)
{
tnode=new Microsoft.Web.UI.WebControls.TreeNode();
tnode.ID=drv["nodeid"].ToString();
tnode.Text=drv["nodetext"].ToString();
//tnode.NavigateUrl="javascript:getNodeText('"+drv["nodeid"].ToString()+"','"+drv["nodetext"].ToString()+"');";
Nds.Add(tnode);
InitTree(tnode.Nodes,drv["nodeid"].ToString(),ds);
}
}
}
有高手帮一下了,很急啊.帮帮手啊
过不去啊