(1)
id name
001 客户管理
001001 集团客户信息
001002 集团员工信息
002 销售管理
002001 批零业务
002002 集团客户消费业务
002003 集团员工消费业务
002004 集团客户消费查询
003 库存管理
003001 进货管理
003002 库存维护
003003 库存查询
003004 库存变更查询
004 审计
004001 营业厅营帐与销售汇总统计
004002 消费统计
004003 销售统计
004004 营帐统计
005 基础数据维护
005001 商品信息
005002 库房维护
(2)
id name
001 管理系统
001001 客户管理
001001001 集团客户信息
001001002 集团员工信息
001002 销售管理
001002001 批零业务
001002002 集团客户消费业务
001002003 集团员工消费业务
001002004 集团客户消费查询
001003 库存管理
001003001 进货管理
001003002 库存维护
001003003 库存查询
001003004 库存变更查询
001004 审计
001004001 营业厅营帐与销售汇总统计
001004002 消费统计
001004003 销售统计
001004004 营帐统计
001005 基础数据维护
001005001 商品信息
001005002 库房维护
向各位高手请教TreeView控件问题以上两个问题
分别从数据库中读入treeview树形控件,希望给出代码。
谢谢了!!
id name
001 客户管理
001001 集团客户信息
001002 集团员工信息
002 销售管理
002001 批零业务
002002 集团客户消费业务
002003 集团员工消费业务
002004 集团客户消费查询
003 库存管理
003001 进货管理
003002 库存维护
003003 库存查询
003004 库存变更查询
004 审计
004001 营业厅营帐与销售汇总统计
004002 消费统计
004003 销售统计
004004 营帐统计
005 基础数据维护
005001 商品信息
005002 库房维护
(2)
id name
001 管理系统
001001 客户管理
001001001 集团客户信息
001001002 集团员工信息
001002 销售管理
001002001 批零业务
001002002 集团客户消费业务
001002003 集团员工消费业务
001002004 集团客户消费查询
001003 库存管理
001003001 进货管理
001003002 库存维护
001003003 库存查询
001003004 库存变更查询
001004 审计
001004001 营业厅营帐与销售汇总统计
001004002 消费统计
001004003 销售统计
001004004 营帐统计
001005 基础数据维护
001005001 商品信息
001005002 库房维护
向各位高手请教TreeView控件问题以上两个问题
分别从数据库中读入treeview树形控件,希望给出代码。
谢谢了!!
解决方案 »
- 假如需要遍历次数为1K。 那么foreach 和 for 哪个效率更高一点??
- 怎么连接数据库
- 怎么才能看到Default.aspx.cs这个文件,它真实存在吗?
- 自定义控件样式问题
- 发送邮件时如何实现传送一个网页文件内容为正文
- 求教:DataGrid和DataTable的问题,达人请进!
- 为什么刚上传的图片无法删除,说因为该文件正由另一进程使用。可我对象都已经dispose了
- ★B/S结构的程序中一个很重要的问题,不知大家考虑过没有,关于权限的问题
- <%#Eval("url").ToString()==""?"1":"2"%>能把1和2换成数据库中的数据吗?
- 大家来帮着看看一个奇怪的问题?
- 留言本asp.net/asp.net+xml??????????
- 如何在鼠标移动到图片上的时候屏蔽那四个按钮,比如“另存为”、“打印”等按钮?谢谢!
http://blog.csdn.net/johnny_mcoc/archive/2005/10/25/515974.aspx
其中有个'初始化树形结构 部分
数据结构如下:
CREATE TABLE [dbo].[S_Menu] (
[NodeId] [char] (6) COLLATE Chinese_PRC_CI_AS NULL ,
[ParentId] [char] (6) COLLATE Chinese_PRC_CI_AS NULL ,
[NodeName] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
[Address] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
[Icon] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL
) ON [PRIMARY]
GO
数据库如下:
NodeId ParentId NodeName Address Icon
100000 0 公共查询部 icon_document.gif
100001 100000 人民币日报查询 public/a1.aspx icon_settings.gif
100002 100000 外币日报查询 public/a2.aspx icon_settings.gif
100003 0 分行科技部 icon_document.gif
100004 100003 人民币日报查询 tech/a1.aspx icon_settings.gif
100005 100003 外币日报查询 tech/a2.aspx icon_settings.gif
100006 0 福田支行 icon_document.gif
100007 100006 月存款进度表 a1.aspx icon_settings.gif
100008 100006 月存款走势图 a2.aspx icon_settings.gif
100009 0 罗湖支行 icon_document.gif
100010 100009 月存款进度表 a1.aspx icon_settings.gif
100011 100009 月存款走势图 a2.aspx icon_settings.gifmenu_left.aspx文件如下:
<%@ Register TagPrefix="iewc" Namespace="Microsoft.Web.UI.WebControls" Assembly="Microsoft.Web.UI.WebControls, Version=1.0.2.226, Culture=neutral, PublicKeyToken=31bf3856ad364e35" %>
<%@ Page language="c#" Codebehind="menu_Left.aspx.cs" AutoEventWireup="false" Inherits="hzquery.menu.menu_Left" %>
<HTML>
<HEAD>
<title>menu_Left</title>
<meta name="GENERATOR" Content="Microsoft Visual Studio 7.0">
<meta name="CODE_LANGUAGE" Content="C#">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
</HEAD>
<body MS_POSITIONING="GridLayout">
<form id="menu_Left" method="post" runat="server">
<iewc:TreeView id="tvMenu" runat="server"></iewc:TreeView>
</form>
</body>
</HTML>
CodeBehind代码如下:
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 hzquery.menu
{
/// <summary>
/// menu_Left 的摘要说明。
/// </summary>
public class menu_Left : System.Web.UI.Page
{
protected Microsoft.Web.UI.WebControls.TreeView tvMenu;
SqlConnection Conn;
SqlDataAdapter myCmd;
DataSet ds;
string cmdSelect;
private void Page_Load(object sender, System.EventArgs e)
{
Conn=new SqlConnection(Application["ConnString"].ToString());
CreateDataSet();
InitTree(tvMenu.Nodes,"0");
}
//建立数据集
private DataSet CreateDataSet()
{
cmdSelect="select * from S_Menu";
myCmd=new SqlDataAdapter(cmdSelect,Conn);
ds=new DataSet();
myCmd.Fill(ds,"tree");
return ds;
}
//建树的基本思路是:从根节点开始递归调用显示子树
private void InitTree(TreeNodeCollection Nds,string parentId)
{
DataView dv=new DataView();
TreeNode tmpNd;
string intId;
dv.Table=ds.Tables["tree"];
dv.RowFilter="ParentId="" + parentId + """ ;
foreach(DataRowView drv in dv)
{
tmpNd=new TreeNode();
tmpNd.ID=drv["NodeId"].ToString();
tmpNd.Text=drv["NodeName"].ToString();
tmpNd.ImageUrl="../images/"+drv["Icon"].ToString();
tmpNd.NavigateUrl="../"+drv["Address"].ToString();
Nds.Add(tmpNd);
intId=drv["ParentId"].ToString();
InitTree(tmpNd.Nodes,tmpNd.ID);
}
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
InitializeComponent();
base.OnInit(e);
}
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
}
}