不太明白,是用的TreeView控件吗?
解决方案 »
- vs2005升级到vs2008时,ajax1.0升级到ajax3.5时报错?
- 关于一个小的效果实现问题
- 高手进!自定义控件,提示"在 DataBind、Init、Load、PreRender 或 Unload 阶段,不能修改该控件集合。"在线等待。。。。。
- 请教关于TreeView的问题
- 在Gridview控件中使用模板列显示数据,怎样在后台获取itemtemplate中编辑之前的数据?
- 热点中 如何传递参数啊
- 在datagrid里如何自动生成序号,C#+ASP.NET 解决了马上给分
- 新手请教动态表格的实现
- 关于DataGrid的HyperLinkColumn的一个问题
- 在net中无法编译动网论坛的UBB代码
- datalist1里面嵌套datalist2,datalist2里面的button的事件怎么触发?
- 各位朋友一定要帮帮我? datagrid的问题!!!
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Data.OleDb;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;namespace myoa
{
/// <summary>
/// WebForm1 的摘要说明。
/// </summary>
public class WebForm1 : System.Web.UI.Page
{
protected System.Data.OleDb.OleDbConnection oleDbConnection1;
protected System.Data.OleDb.OleDbDataAdapter oleDbDataAdapter1;
protected System.Data.DataSet dataSet1;
protected Microsoft.Web.UI.WebControls.TreeView TreeView1;
DataSet ds=new DataSet();
public string objConn;
//public string objConn ="Provider=Microsoft.Jet.OLEDB.4.0; Data Source="+"\\dATABASE\\myoa.mdb";
OleDbConnection MyConn;
OleDbDataAdapter mycommand; private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
//TreeView1.Width=100;
//TreeView1.Height=450;
objConn ="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + Server.MapPath("dATABASE\\myoa.mdb");
string NodeText="-1";
MyConn=new OleDbConnection(objConn);
mycommand=new OleDbDataAdapter("select * from tree where TreeNode='"+NodeText+"' order by NodeNumber asc",MyConn);
MyConn.Open();
mycommand.Fill(ds);
int i;
//===根结点数
for(i=0;i<ds.Tables[0].Rows.Count;i++)
{
Microsoft.Web.UI.WebControls.TreeNode myTreeNode=new Microsoft.Web.UI.WebControls.TreeNode();
//dim myTreeNode as new Microsoft.Web.UI.WebControls.TreeNode()
myTreeNode.Text=ds.Tables[0].Rows[i].ItemArray[1].ToString() ;
myTreeNode.ImageUrl="images/closedfolder.gif";
myTreeNode.ExpandedImageUrl="images/openfolder.gif";
myTreeNode.NavigateUrl="Query.aspx?NodeText="+myTreeNode.Text;
myTreeNode.Target="mainFrame";
TreeView1.Nodes.Add(myTreeNode);
//Response.Write( ds.Tables[0].Rows[i].ItemArray[0].ToString());
//Response.Write("<br/>");
//Response.Write( ds.Tables[0].Rows[i].ItemArray[1].ToString());
CreateChildTree(myTreeNode,ds.Tables[0].Rows[i].ItemArray[0].ToString() ,ds.Tables[0].Rows[i].ItemArray[1].ToString() );
}
//end sub
}
public void CreateChildTree(Microsoft.Web.UI.WebControls.TreeNode ParentNode,string NodeId ,string ParentNodeText)
{
mycommand=new OleDbDataAdapter("select * from tree where TreeNode='"+NodeId+"' order by NodeNumber desc",MyConn);
//MyConn.Open();
mycommand.Fill(ds,"second");
int i;
for(i=0;i<ds.Tables["second"].Rows.Count;i++)
{
Microsoft.Web.UI.WebControls.TreeNode myTreeNode=new Microsoft.Web.UI.WebControls.TreeNode();
myTreeNode.Text=ds.Tables["second"].Rows[i].ItemArray[1].ToString();
myTreeNode.ImageUrl="images/book.gif";
string myTreeNodeText =myTreeNode.Text;
string ParentNodeTextS =ParentNodeText;
//myTreeNodeText=Server.UrlEncode(myTreeNodeText);
//ParentNodeTextS=Server.UrlEncode(ParentNodeTextS);
myTreeNode.NavigateUrl="Query.aspx?NodeText="+myTreeNodeText+"&ParentNodeText="+ParentNodeTextS;
myTreeNode.Target="mainFrame";
ParentNode.Nodes.Add(myTreeNode);
}
ds.Tables["second"].Clear();
} #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.oleDbConnection1 = new System.Data.OleDb.OleDbConnection();
this.oleDbDataAdapter1 = new System.Data.OleDb.OleDbDataAdapter();
this.dataSet1 = new System.Data.DataSet();
((System.ComponentModel.ISupportInitialize)(this.dataSet1)).BeginInit();
//
// dataSet1
//
this.dataSet1.DataSetName = "NewDataSet";
this.dataSet1.Locale = new System.Globalization.CultureInfo("zh-CN");
this.Load += new System.EventHandler(this.Page_Load);
((System.ComponentModel.ISupportInitialize)(this.dataSet1)).EndInit(); }
#endregion
} //public Sub resize()
}
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Data.OleDb;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;namespace myoa
{
/// <summary>
/// WebForm1 的摘要说明。
/// </summary>
public class WebForm1 : System.Web.UI.Page
{
protected System.Data.OleDb.OleDbConnection oleDbConnection1;
protected System.Data.OleDb.OleDbDataAdapter oleDbDataAdapter1;
protected System.Data.DataSet dataSet1;
protected Microsoft.Web.UI.WebControls.TreeView TreeView1;
DataSet ds=new DataSet();
public string objConn;
//public string objConn ="Provider=Microsoft.Jet.OLEDB.4.0; Data Source="+"\\dATABASE\\myoa.mdb";
OleDbConnection MyConn;
OleDbDataAdapter mycommand; private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
//TreeView1.Width=100;
//TreeView1.Height=450;
objConn ="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + Server.MapPath("dATABASE\\myoa.mdb");
string NodeText="-1";
MyConn=new OleDbConnection(objConn);
mycommand=new OleDbDataAdapter("select * from tree where TreeNode='"+NodeText+"' order by NodeNumber asc",MyConn);
MyConn.Open();
mycommand.Fill(ds);
int i;
//===根结点数
for(i=0;i<ds.Tables[0].Rows.Count;i++)
{
Microsoft.Web.UI.WebControls.TreeNode myTreeNode=new Microsoft.Web.UI.WebControls.TreeNode();
//dim myTreeNode as new Microsoft.Web.UI.WebControls.TreeNode()
myTreeNode.Text=ds.Tables[0].Rows[i].ItemArray[1].ToString() ;
myTreeNode.ImageUrl="images/closedfolder.gif";
myTreeNode.ExpandedImageUrl="images/openfolder.gif";
myTreeNode.NavigateUrl="Query.aspx?NodeText="+myTreeNode.Text;
myTreeNode.Target="mainFrame";
TreeView1.Nodes.Add(myTreeNode);
//Response.Write( ds.Tables[0].Rows[i].ItemArray[0].ToString());
//Response.Write("<br/>");
//Response.Write( ds.Tables[0].Rows[i].ItemArray[1].ToString());
CreateChildTree(myTreeNode,ds.Tables[0].Rows[i].ItemArray[0].ToString() ,ds.Tables[0].Rows[i].ItemArray[1].ToString() );
}
//end sub
}
public void CreateChildTree(Microsoft.Web.UI.WebControls.TreeNode ParentNode,string NodeId ,string ParentNodeText)
{
mycommand=new OleDbDataAdapter("select * from tree where TreeNode='"+NodeId+"' order by NodeNumber desc",MyConn);
//MyConn.Open();
mycommand.Fill(ds,"second");
int i;
for(i=0;i<ds.Tables["second"].Rows.Count;i++)
{
Microsoft.Web.UI.WebControls.TreeNode myTreeNode=new Microsoft.Web.UI.WebControls.TreeNode();
myTreeNode.Text=ds.Tables["second"].Rows[i].ItemArray[1].ToString();
myTreeNode.ImageUrl="images/book.gif";
string myTreeNodeText =myTreeNode.Text;
string ParentNodeTextS =ParentNodeText;
//myTreeNodeText=Server.UrlEncode(myTreeNodeText);
//ParentNodeTextS=Server.UrlEncode(ParentNodeTextS);
myTreeNode.NavigateUrl="Query.aspx?NodeText="+myTreeNodeText+"&ParentNodeText="+ParentNodeTextS;
myTreeNode.Target="mainFrame";
ParentNode.Nodes.Add(myTreeNode);
}
ds.Tables["second"].Clear();
} #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.oleDbConnection1 = new System.Data.OleDb.OleDbConnection();
this.oleDbDataAdapter1 = new System.Data.OleDb.OleDbDataAdapter();
this.dataSet1 = new System.Data.DataSet();
((System.ComponentModel.ISupportInitialize)(this.dataSet1)).BeginInit();
//
// dataSet1
//
this.dataSet1.DataSetName = "NewDataSet";
this.dataSet1.Locale = new System.Globalization.CultureInfo("zh-CN");
this.Load += new System.EventHandler(this.Page_Load);
((System.ComponentModel.ISupportInitialize)(this.dataSet1)).EndInit(); }
#endregion
} //public Sub resize()
}
Microsoft.Web.UI.WebControls.TreeViewSelectEventArgs) Handles
TreeView1.SelectedIndexChange Dim SelectNd As TreeNode
SelectNd = TreeView1.GetNodeFromIndex(TreeView1.SelectedNodeIndex)
If SelectNd.Nodes.Count <= 0 Then ‘加这个判断是为防止重复添加子节点
Dim ds As DataSet
ds = ... '为根据选择节点(SelectNd.ID等)的数据,检索数据库返回包括子
节点信息的数据集
Dim dv As New DataView()
Dim drv As DataRowView
dv.Table = ds.Tables(0)
Dim tmpNd As TreeNode
For Each drv In dv
tmpNd = New TreeNode()
tmpNd.ID = drv("ID")
tmpNd.Text = drv("Name")
tmpNd.NodeData = ...
tmpNd.NavigateUrl = ...
......
SelectNd.Nodes.Add(tmpNd)
SelectNd.Expanded = True
Next
End If
End Sub