20行代码打造MSDN无限及树形菜单(treeview)[原创]!
2005-12-04 18:02
621 查看
希望这篇文章能对大家有所帮助!
http://blog.csdn.net/zlp8383178/
树形菜单一直是网页中比较常见的列表表现形式,大家也一定有很多这方面的经验和教训,在此,我还是多罗嗦一句:)
这个功能最大的功臣是obout_ASPTreeView_2_NET.dll组件,在此很感谢那些开发该组件的达人,顺便说一句,它是免费的,大家可以到http://www.obout.com下载,里面还有很多实用的组件,也是免费的,对初学者或有经验的“高”手也很有帮助!
一:建立树形菜单的表结果,改组件也支持XML。(如图)
因为该组件默认情况下“root”属性为树的根节点。
二:实现树形菜单的业务逻辑,呵呵,这里说业务逻辑其实有点夸张,因为是obout_ASPTreeView_2_NET.dll组件帮忙实现的,这里应该是填充它罢了。
protected obout_ASPTreeView_2_NET.Tree tr = new obout_ASPTreeView_2_NET.Tree();
protected string conn = ”数据库路径“;
protected string sql = "select * from menu";
this.BuildTree(conn,sql);
this.tr.FolderIcons = "/TreeIcons/Icons";//树的打开关闭时的图片路径,在填充的时候也可以具体指定图片名称,大家可根据自己的需要修改。文章最后有具体的帮助文件URL
this.tr.FolderStyle = "/TreeIcons/Styles/MSDN";//这里是样式表的定义所在文件夹
this.Response.Write(this.tr.HTML());//呈现树
protected void BuildTree(string conn,string sql)
{
string ID;
string Title;
//这里的Title还支持HTML格式的表现形式
//"<span onclick='ob_t23(this)' style='cursor: pointer;'><a href = http://blog.csdn.net/zlp8383178/>zlp8383178的GLOG</A></span>"
string ID_key;
System.Data.OleDb.OleDbConnection Conn = new System.Data.OleDb.OleDbConnection(conn);
System.Data.OleDb.OleDbCommand Comm = new System.Data.OleDb.OleDbCommand(sql,Conn);
Conn.Open();
System.Data.OleDb.OleDbDataReader dr = Comm.ExecuteReader(System.Data.CommandBehavior.CloseConnection);
while(dr.Read())
{
ID = dr.GetInt32(0).ToString();
Title = dr.GetString(1).ToString();
ID_key = dr.GetString(2).ToString();
this.tr.Add(ID_key,ID,Title,null,null,null);//填充树
}
dr.Close();
}
生成页面的结果:
怎么样,大家是不是觉得很方便呢。
大家在实际的操作过程中可自行更改,比如数据库的访问,异常的捕捉等等,在这里我都没有具体的展现。
下面是该组件的帮助文档的地址及组件的下载地址:
http://www.obout.com/t2/eMSDN_DL.aspx
呵呵,写的很罗嗦,大家多包涵,欢迎转载
http://blog.csdn.net/zlp8383178/
http://blog.csdn.net/zlp8383178/
树形菜单一直是网页中比较常见的列表表现形式,大家也一定有很多这方面的经验和教训,在此,我还是多罗嗦一句:)
这个功能最大的功臣是obout_ASPTreeView_2_NET.dll组件,在此很感谢那些开发该组件的达人,顺便说一句,它是免费的,大家可以到http://www.obout.com下载,里面还有很多实用的组件,也是免费的,对初学者或有经验的“高”手也很有帮助!
一:建立树形菜单的表结果,改组件也支持XML。(如图)
因为该组件默认情况下“root”属性为树的根节点。
二:实现树形菜单的业务逻辑,呵呵,这里说业务逻辑其实有点夸张,因为是obout_ASPTreeView_2_NET.dll组件帮忙实现的,这里应该是填充它罢了。
protected obout_ASPTreeView_2_NET.Tree tr = new obout_ASPTreeView_2_NET.Tree();
protected string conn = ”数据库路径“;
protected string sql = "select * from menu";
this.BuildTree(conn,sql);
this.tr.FolderIcons = "/TreeIcons/Icons";//树的打开关闭时的图片路径,在填充的时候也可以具体指定图片名称,大家可根据自己的需要修改。文章最后有具体的帮助文件URL
this.tr.FolderStyle = "/TreeIcons/Styles/MSDN";//这里是样式表的定义所在文件夹
this.Response.Write(this.tr.HTML());//呈现树
protected void BuildTree(string conn,string sql)
{
string ID;
string Title;
//这里的Title还支持HTML格式的表现形式
//"<span onclick='ob_t23(this)' style='cursor: pointer;'><a href = http://blog.csdn.net/zlp8383178/>zlp8383178的GLOG</A></span>"
string ID_key;
System.Data.OleDb.OleDbConnection Conn = new System.Data.OleDb.OleDbConnection(conn);
System.Data.OleDb.OleDbCommand Comm = new System.Data.OleDb.OleDbCommand(sql,Conn);
Conn.Open();
System.Data.OleDb.OleDbDataReader dr = Comm.ExecuteReader(System.Data.CommandBehavior.CloseConnection);
while(dr.Read())
{
ID = dr.GetInt32(0).ToString();
Title = dr.GetString(1).ToString();
ID_key = dr.GetString(2).ToString();
this.tr.Add(ID_key,ID,Title,null,null,null);//填充树
}
dr.Close();
}
生成页面的结果:
怎么样,大家是不是觉得很方便呢。
大家在实际的操作过程中可自行更改,比如数据库的访问,异常的捕捉等等,在这里我都没有具体的展现。
下面是该组件的帮助文档的地址及组件的下载地址:
http://www.obout.com/t2/eMSDN_DL.aspx
呵呵,写的很罗嗦,大家多包涵,欢迎转载
http://blog.csdn.net/zlp8383178/
相关文章推荐
- JS无限级树形菜单(原创代码)
- JS实现无限级网页折叠菜单(类似树形菜单)效果代码
- 无限级CSS树形菜单代码
- json+jQuery实现的无限级树形菜单效果代码
- json+jQuery实现的无限级树形菜单效果代码
- 绑定无限级的树形菜单---TreeView
- [原创]18行代码实现无限级填充TreeView的例子与函数
- JS实现无限级网页折叠菜单(类似树形菜单)效果代码
- 用 lightTreeview 实现树形分类菜单的功能 展开收缩分类代码
- 常用的在数据库中建立无限级树形菜单的asp.net代码
- 常用的在数据库中建立无限级树形菜单的asp.net代码
- Vue.js组件tree实现无限级树形菜单
- 使用jQuery的treeview插件实现树形菜单
- 使用TreeView实现无限级扩展节点(原创)
- java实现遍历树形菜单两种实现代码分享
- 无限级CSS树形菜单 Ver2.0
- JavaScript+CSS多级树形展开菜单的代码
- 4行代码简单实现js树形菜单
- .NET三种状态的树形菜单的实现 TreeView WinForm
- CSS Sprite打造的个性化导航菜单代码