首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

关于TreeView小疑点!80分

2012-02-24 
关于TreeView小问题!!在线等80分ASP.net1.1我想要一个TreeView完整的代码;从数据库中读出数据然后自动倒入

关于TreeView小问题!!在线等80分
ASP.net1.1     我想要一个TreeView完整的代码;从数据库中读出数据然后自动倒入到TreeView控件,谢谢

[解决办法]
看这里能不能满足你的要求
http://blog.sina.com.cn/u/4acd6e560100070s
[解决办法]
void creat_node(string
name,Microsoft.Web.UI.WebControls.TreeNode t1,string number)
{
//定义一个新的结点

Microsoft.Web.UI.WebControls.TreeNode t2=new
Microsoft.Web.UI.WebControls.TreeNode();
t2.ID=number;
t2.Text=name;

//判断是否为根结点
TreeView1.ExpandedImageUrl= "images/Depart03.bmp ";
if(t1.ID.Trim()== "### ")
{
TreeView1.Nodes.Add(t2);
t2.ImageUrl= "images/Depart01.bmp ";
}
else
{
t1.Nodes.Add(t2);
t2.ImageUrl= "images/Depart01.bmp ";
t1.ImageUrl= "images/Depart02.bmp ";
}

//取得这个结点的所有子结点,利用递归自动生成
string mySelectQuery = "SELECT ParentID, ID,Name FROM table1
where ParentID= ' " + number + " ' ";
string MyConnString= "provider=Microsoft.Jet.OLEDB.4.0;Data
Source= "+Server.MapPath( ". ")+ "/dt/mydata.mdb ";
OleDbConnection myConnection = new
OleDbConnection(MyConnString);
OleDbCommand myCommand = new
OleDbCommand(mySelectQuery,myConnection);
myConnection.Open();
OleDbDataReader myReader;
myReader = myCommand.ExecuteReader();
while (myReader.Read())
{
creat_node(myReader.GetString(2),t2,myReader.GetString(1));
}
myReader.Close();
myConnection.Close();
}
private void CreateProviderTreeBtn_Click(object sender,
System.EventArgs e)
{
Microsoft.Web.UI.WebControls.TreeNode t1=new
Microsoft.Web.UI.WebControls.TreeNode();
creat_node( " ",t1, "### ");
7、怎样使用TreeView???

//初始化TreeView数据
private void InitTV(int intVOrderLen)
{
SqlDataReader dr;
SqlCommand myCommand;
string strSel = "select * from bas_enterprise where
len(vieworder)= "+intVOrderLen+ " order by vieworder ";
myCommand = new SqlCommand (strSel, myConnection);
dr=myCommand.ExecuteReader();
while (dr.Read ())
{
TreeNode pNode=new TreeNode ();
pNode.Text =dr[ "EntpName "].ToString ();
pNode.ID =dr[ "ViewOrder "].ToString ();
TreeView1.Nodes .Add (pNode);

}
dr.Close ();

}
private void TreeView1_SelectedIndexChange(object sender,
Microsoft.Web.UI.WebControls.TreeViewSelectEventArgs e)
{
TreeNode NewNode=TreeView1.GetNodeFromIndex
(TreeView1.SelectedNodeIndex);
string strNodeId=NewNode.ID .ToString ();
SqlDataReader dr;
SqlCommand myCommand;
int intVOrderLen=strNodeId.Length+2;
string strSel = "select * from bas_enterprise where
len(vieworder)= "+intVOrderLen+ " and vieworder like '% "+strNodeId+ "__% '
order by vieworder ";
myCommand = new SqlCommand (strSel, myConnection);
dr=myCommand.ExecuteReader();
NewNode.Nodes .Clear();
while (dr.Read ())
{
TreeNode pNode=new TreeNode ();
pNode.Text =dr[ "EntpName "].ToString ();
pNode.ID =dr[ "ViewOrder "].ToString ();
NewNode.Nodes.Add (pNode);
}
dr.Close ();
TreeView1.ExpandLevel=1;
}

[解决办法]
对你有帮助
http://community.csdn.net/Expert/topic/5387/5387434.xml?temp=.8401758
------解决方案--------------------


If Not Page.IsPostBack Then
Dim sqlQuery As New SqlCommand
sqlQuery.CommandText = "Select classbm From ysclass "

'sqlQuery.Parameters.Add( "@categoryid ", SqlDbType.Int).Value = _node.Value()
' jcset.Text = jcset.Text + "dd "

Dim ResultSet As Data.DataSet = RunQuery(sqlQuery)
If ResultSet.Tables.Count > 0 Then
Dim row As DataRow
For Each row In ResultSet.Tables(0).Rows
Dim NewNode As TreeNode = New _
TreeNode(row( "classbm ").ToString())
' NewNode.PopulateOnDemand = True


Dim cbm As String = row( "classbm ")
Dim subbm As String = " "
NewNode.SelectAction = TreeNodeSelectAction.Select
TreeView1.Nodes.Add(NewNode)
Fillnode(NewNode, cbm, subbm)
Next
End If
End If
[解决办法]
Function RunQuery(ByVal sqlQuery As SqlCommand) As Data.DataSet

Dim connectionString As String
connectionString = _
ConfigurationManager.ConnectionStrings _
( "ysdbConnectionString ").ConnectionString
Dim dbConnection As New SqlConnection
dbConnection.ConnectionString = connectionString
Dim dbAdapter As New SqlDataAdapter
dbAdapter.SelectCommand = sqlQuery
sqlQuery.Connection = dbConnection
Dim resultsDataSet As Data.DataSet = New Data.DataSet
Try
dbAdapter.Fill(resultsDataSet)
Catch ex As Exception
labelStatus.Text = ex.Message
End Try
Return resultsDataSet
End Function
[解决办法]
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 treeview
{
/// <summary>
/// WebForm1 的摘要说明。
/// </summary>
public class WebForm1 : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Label Label1;
protected Microsoft.Web.UI.WebControls.TreeView TreeView1;

private void Page_Load(object sender, System.EventArgs e)
{
SqlConnection myConn ;
myConn=new SqlConnection( "server=.;database=db_cqit_1;uid=sa;pwd= ' ' ");
myConn.Open();
SqlCommand Comm=new SqlCommand( "select * from tbTree ",myConn);


if(!IsPostBack)
{
TreeView1.Nodes.Clear();
SqlDataReader dr=Comm.ExecuteReader();
while(dr.Read())
{

if(dr[ "parentId "].ToString()== " ")
{
TreeNode newNode=new TreeNode();
newNode.Text = dr[ "content "].ToString();
newNode.ID = dr[ "ID "].ToString();
TreeView1.Nodes.Add(newNode);
InitTree(newNode.Nodes, dr[ "ID "].ToString());
}
}
}//根接点是NULL
myConn.Close();
// 在此处放置用户代码以初始化页面
}
private void InitTree(TreeNodeCollection Nds,string parentId)


{
SqlConnection myConn ;
myConn=new SqlConnection( "server=.;database=db_cqit_1;uid=sa;pwd= ' ' ");
myConn.Open();
SqlDataAdapter da=new SqlDataAdapter( "select * from tbTree ",myConn);
DataSet ds=new DataSet();
da.Fill(ds);
myConn.Close();
DataRow[] rows;
rows=ds.Tables[0].Select( "parentId= ' "+parentId+ " ' ");
TreeNode temNd;
foreach(DataRow row in rows)
{
temNd=new TreeNode();
temNd.ID=row[ "ID "].ToString();
temNd.Text=row[ "content "].ToString();
Nds.Add(temNd);
InitTree(temNd.Nodes,temNd.ID);
}
}

#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}

/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.TreeView1.SelectedIndexChange += new Microsoft.Web.UI.WebControls.SelectEventHandler(this.TreeView1_SelectedIndexChange);
this.Load += new System.EventHandler(this.Page_Load);

}
#endregion

private void TreeView1_SelectedIndexChange(object sender, Microsoft.Web.UI.WebControls.TreeViewSelectEventArgs e)
{
TreeNode NewNode=TreeView1.GetNodeFromIndex(e.NewNode);
string strNodeId=NewNode.Text ;
Label1.Text=strNodeId;

}


}
}

IDcontentparentId isLeaf
hg韩国 0
mg美国 0
zg中国 0
zg.gd广东zg 0
zg.gd.fj福建zg.gd 0
zg.gd.gz广州zg.gd 0
zg.gd.st珠海zg.gd 0
zg.gd.xg宵旰zg.hb 0
zg.hb湖北zg 0

tbTree(ID ,content,parentId,isLeaf) 表结构..
你添加一个 treeview 和一个labal 进行了 还要该下数据库连接....

热点排行