Treeview 儲存過程動態繫結樹形

2021-05-21 20:39:08 字數 2519 閱讀 8412

這是從同事那裡得來的**,當然他也是從網上看來的。呵呵!整理了一下,這個方法繫結速度遠遠高於上一種(遞迴繫結)繫結樹控制項的方法。

下面是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 getdataprocedurecreatetree : system.web.ui.page }

/** 

/// 呼叫儲存過程,得到父節點的子節點,放到datatable中

/// 

/// 

/// 

private datatable getchindnode(string parentid)

.../** 

/// 填充節點事件

/// 

/// 

/// 

protected void treeview1_treenodepopulate(object sender, treenodeeventargs e)

...private void getdatanode(string parentid,treenode node)

.../** 

/// 填充節點

/// 

/// 

/// 

private void bindnode(datatable dt ,treenodecollection node)

... }

} 下面是aspx介面中的源:

<%@ page language="c#" autoeventwireup="true" codefile="getdataprocedurecreatetree.aspx.cs" inherits="getdataprocedurecreatetree" %>

下面是dbhelpersql.cs中的**:

using system;

using system.data;

using system.configuration;

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;

/** 

/// dbhelpersql 對資料庫的各種操作。

/// 

public class dbhelpersql //連線sqlserver資料庫

.../** 

/// 連字資料庫

/// 

public void connectdatabase()

.../** 

/// 執行儲存過程返回datatable

/// 

/// 

/// 

/// 

public datatable executesql1(string sql, string parentid)

...catch

... }

} 儲存過程:

create procedure treeviewgetdata(

@parentid nvarchar(40))  --引數,父節點id

asif @parentid is null   --如果,父節點id為空

select [id],[nodename] ,(

select count(*) from ra_subjectstore where parentid=org.[id]) as childnodecount

from ra_subjectstore as org where @parentid  is null

else

--查詢出該父節點下第一級子節點

select [id],[nodename] ,(

select count(*) from ra_subjectstore where parentid=org.[id]) as childnodecount

from ra_subjectstore as org where parentid =@parentid

go

**已

綁室資料到TreeView 遞迴

獲得dataset 資料集 public dataset getdatasetdatas string sql 繫結資料到treeview 需要被繫結treeview 父id treenode public void addtree treeview tvdept string parentid,t...

TreeView動態繫結

public partial class default system.web.ui.page endregion region 填充二級節點 private void addchildnodes treenode tmpnd endregion region endregion region 顯示...

動態載入TreeView

using system.linq using system.web using system.web.security using system.web.ui using system.web.ui.htmlcontrols using system.web.ui.webcontrols usin...