asp.net 2.0 TreeView 数据绑定(原创)
生活随笔
收集整理的這篇文章主要介紹了
asp.net 2.0 TreeView 数据绑定(原创)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?
作者:lhxhappy
原文鏈接: http://www.cnblogs.com/lhxhappy/archive/2006/08/24/484844.html
轉載請標明出處!
1、樹型表結構
CREATE TABLE [T_Tree] (
?[INodeID] [int] NOT NULL ,--節點ID
?[VNodeName] [nvarchar] (255) COLLATE Chinese_PRC_CI_AS NULL ,--節點名稱
?[IParentID] [int] NULL ,--節點父ID
??CONSTRAINT [PK_T_TREE] PRIMARY KEY? CLUSTERED
?(
??[INodeID]
?)? ON [PRIMARY]
) ON [PRIMARY]
GO
?2、TreeView 數據綁定方法:
????///?將數據綁定到TreeView控件
????///?作者:lhxhappy
????///?</summary>
????public?void?TreeViewBind()
????{
????????//從WebConfig文件中獲取連接字符串
????????string?conn?=?ConfigurationManager.AppSettings["conn"];
????????//定義查詢語句
????????string?SQL?=?"Select?*?from?T_Tree";
????????//查詢樹節點最大ID號用于構件樹節點數組
????????string?SQLCOUNT?=?"Select?MAX(INodeID)?from?T_Tree";
????????try
????????{
????????????//將查詢結果返回到SqlDataReader
????????????SqlDataReader?dr?=?SqlHelper.ExecuteReader(conn,?CommandType.Text,?SQL);
????????????//返回樹節點最大ID號
????????????object?obj?=?SqlHelper.ExecuteScalar(conn,?CommandType.Text,?SQLCOUNT);
????????????//將樹節點最大ID號轉換為int型
????????????int?count?=?0;
????????????if?(obj?!=?System.DBNull.Value)
????????????{
????????????????count?=?int.Parse(obj.ToString());
????????????}
????????????//定義對象數組
????????????TreeNode[]?myNodes?=?new?TreeNode[count?+?1];
????????????//初始化對象數組
????????????for?(int?i?=?0;?i?<?myNodes.Length;?i++)
????????????{
????????????????myNodes[i]?=?new?TreeNode();
????????????}
????????????//從表中取數據?構建樹型
????????????while?(dr.Read())
????????????{
????????????????int?iParentNodeId?=?0;
????????????????if?(dr["IParentID"]?==?System.DBNull.Value)
????????????????{
????????????????????iParentNodeId?=?0;
????????????????}
????????????????else
????????????????{
????????????????????iParentNodeId?=?(int)dr["IParentID"];
????????????????}
????????????????int?iMyNodeId?=?(int)dr["INodeID"];
????????????????if?(iParentNodeId?!=?0)
????????????????{
????????????????????myNodes[iMyNodeId].Text?=?dr["VNodeName"].ToString();
????????????????????myNodes[iMyNodeId].NavigateUrl?=?"";
????????????????????myNodes[iParentNodeId].ChildNodes.Add(myNodes[iMyNodeId]);
????????????????}
????????????????else
????????????????{
????????????????????myNodes[iMyNodeId].Text?=?dr["VNodeName"].ToString();
????????????????????myNodes[iMyNodeId].SelectAction?=?TreeNodeSelectAction.None;
????????????????????TreeView1.Nodes.Add(myNodes[iMyNodeId]);
????????????????}
????????????}
????????????TreeView1.ExpandDepth?=?0;
????????}
????????catch?(Exception?ex)
????????{
????????????ex.ToString().Replace("\n",?"<br>");
????????????Response.Write(ex);
????????}
????}
Web.Config文件
<?xml?version="1.0"?encoding="utf-8"?>
<!--?
????注意:?除了手動編輯此文件以外,您還可以使用?
????Web?管理工具來配置應用程序的設置。可以使用?Visual?Studio?中的
?????“網站”->“Asp.Net?配置”選項。
????設置和注釋的完整列表在?
????machine.config.comments?中,該文件通常位于?
????\Windows\Microsoft.Net\Framework\v2.x\Config?中
-->
<configuration?xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
??<appSettings>
????<add?key="conn"?value?="server=127.0.0.1;database=SolutionDB;uid=sa;pwd="></add>
??</appSettings>
??<connectionStrings/>
????<system.web>
????????<!--?
????????????設置?compilation?debug="true"?將調試符號插入
????????????已編譯的頁面中。但由于這會?
????????????影響性能,因此只在開發過程中將此值?
????????????設置為?true。
????????-->
????????<compilation?debug="true"?/>
????????<!--
????????????通過?<authentication>?節可以配置?ASP.NET?使用的?
????????????安全身份驗證模式,
????????????以標識傳入的用戶。?
????????-->
?????????<!--
????????????如果在執行請求的過程中出現未處理的錯誤,
????????????則通過?<customErrors>?節可以配置相應的處理步驟。具體說來,
????????????開發人員通過該節可以配置
????????????要顯示的?html?錯誤頁
????????????以代替錯誤堆棧跟蹤。
????????<customErrors?mode="RemoteOnly"?defaultRedirect="GenericErrorPage.htm">
????????????<error?statusCode="403"?redirect="NoAccess.htm"?/>
????????????<error?statusCode="404"?redirect="FileNotFound.htm"?/>
????????</customErrors>
????????-->
????</system.web>
</configuration>
方法里面還用到了微軟提供的SqlHelper類,我想搞.net開發的朋友應該不會陌生吧,這里我就不粘代碼了。需要的話大家到微軟網站上面找找吧~!或者Emial我也可以~!
轉載于:https://www.cnblogs.com/lhxhappy/archive/2006/08/24/484844.html
總結
以上是生活随笔為你收集整理的asp.net 2.0 TreeView 数据绑定(原创)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何判断一个点是否在三角形内部
- 下一篇: 日历控件源码开放--适用于ASP.NET