轉(zhuǎn)帖|其它|編輯:郝浩|2010-12-28 16:56:13.000|閱讀 778 次
概述:最近本人做一個項目,運用到TreeView樹型目錄,搜索了網(wǎng)上很多的實例,不知道網(wǎng)友是不是故弄玄虛,還是故做高深,或是本人水平有限看不懂,給出的實例源碼均無法實現(xiàn)動態(tài)的TreeView,也有網(wǎng)友用MzTreeView1.0 修改過類似于Csdn社區(qū)的樹型菜單,本人研究了半天,仍然無法在asp.net2.0下實現(xiàn)。實在為難之下,我自己做了一個,為了方便初學(xué)者,現(xiàn)貼出全部源碼及數(shù)據(jù)庫建庫腳本。由于時間倉促,難免有不足之處,歡迎網(wǎng)友提出寶貴的修改意見。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
最近本人做一個項目,運用到TreeView樹型目錄,搜索了網(wǎng)上很多的實例,不知道網(wǎng)友是不是故弄玄虛,還是故做高深,或是本人水平有限看不懂,給出的實例源碼均無法實現(xiàn)動態(tài)的TreeView,也有網(wǎng)友用MzTreeView1.0 修改過類似于Csdn社區(qū)的樹型菜單,本人研究了半天,仍然無法在asp.net2.0下實現(xiàn)。實在為難之下,我自己做了一個,為了方便初學(xué)者,現(xiàn)貼出全部源碼及數(shù)據(jù)庫建庫腳本。由于時間倉促,難免有不足之處,歡迎網(wǎng)友提出寶貴的修改意見。
一、前臺Aspx代碼:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "//www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="//www.w3.org/1999/xhtml" >
<head runat="server">
<title>無標(biāo)題頁</title>
<style type="text/css">
<!--
body,td,th {
font-family: 宋體;
font-size: 9pt;
}
body {
margin-left: 0px;
margin-top: 0px;
margin-right: 0px;
margin-bottom: 0px;
}
-->
</style>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:TreeView ID="TreeView1" runat="server" Width="100%" />
</div>
</form>
</body>
</html>
二、后置代碼CS文件
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.Data.SqlClient;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
TreeViewBind();
}
}
主從表綁定#region 主從表綁定
private void TreeViewBind()
{
DataSet dst = GetTreeViewData();
foreach (DataRow masterRow in dst.Tables[ "sProBigName"].Rows)
{
TreeNode masterNode = new TreeNode((string)masterRow[ "sProBigName"]);
TreeView1.Nodes.Add(masterNode);
foreach (DataRow childRow in masterRow.GetChildRows( "child"))
{
TreeNode childNode = new TreeNode((string)childRow[ "sProSmallSortName"]);
masterNode.Expanded = false;
masterNode.ChildNodes.Add(childNode);
}
}
}
private DataSet GetTreeViewData()
{
SqlConnection Conn = new SqlConnection(System.Configuration.ConfigurationManager.AppSettings[ "ConnectionSqlServer"].ToString());
SqlDataAdapter BigSort = new SqlDataAdapter( "select * from [Yp_ProBigSort]", Conn);
SqlDataAdapter SmallSort = new SqlDataAdapter( "select * from [Yp_ProSmallSort]", Conn);
DataSet ds = new DataSet();
BigSort.Fill(ds, "sProBigName");
SmallSort.Fill(ds, "sProSmallSortName");
ds.Relations.Add( "child", ds.Tables["sProBigName"].Columns["iProBigSort_ID"], ds.Tables["sProSmallSortName"].Columns["iProBigSortID"]);
return ds;
}
#endregion
}
三、數(shù)據(jù)庫:
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自:網(wǎng)絡(luò)轉(zhuǎn)載