asp.net带的treeview有几个缺点:
1,有的浏览器不能够正确显示树,就是ie6有的也不能够正常显示
2,速度慢,老牛拉破车啊,慢的不得了
所以我就找了个js树,数据库版的,但那是asp的,没办法,把他改成aspx的吧!!!
梅花树的资料:开发文档: http://www.meizz.com/web/article.asp?id=436
控件下载: http://www.meizz.com/web/download/mztreeview10.rar
应用示例: http://www.meizz.com/web/demo/mztreeview10.htm
更多细节:http://community.csdn.net/expert/topic/3841/3841740.xml?temp=.3988459
特别感谢:久久的宝贝!!!!!
left.aspx代码如下:
<script language="javascript" src="mztreeview10.js"></script>
<link href="menutree/menu.css" type="text/css" rel="stylesheet">
<style> a.mztreeview { padding-left: 3px; font-size: 12px } </style>
</head>
<body leftmargin="0" topmargin="2">
<script language="javascript">
window.tree = new mztreeview("tree");
tree.seticonpath("menutree/"); //可用相对路径
<%=str%> //这里的str是在后台定义的一个string,他包含了从数据库取出来的所有节点信息,只能够写这里
//tree.seturl("catalog.asp");
//tree.settarget("mzmain");
document.write(tree.tostring()); //亦可用 obj.innerhtml = tree.tostring();
tree.focus(111); //让id是111的节点获得焦点,同时也展开了这个节点上的父节点!
//-->
</script>
</body>
现在是后台cs文件:
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;
namespace hualong.bbs
{
/// <summary>
/// left 的摘要说明。
/// </summary>
public class left : system.web.ui.page
{
public string str;
private void page_load(object sender, system.eventargs e)
{
// 在此处放置用户代码以初始化页面
string connectstring = system.configuration.configurationsettings.appsettings["connstr1"].tostring();
system.data.sqlclient.sqlconnection conn = new system.data.sqlclient.sqlconnection(connectstring);
system.data.sqlclient.sqldataadapter adapter = new system.data.sqlclient.sqldataadapter("select_treeview_pwqzc",conn);
try
{
system.text.stringbuilder node = new system.text.stringbuilder();
conn.open();
system.data.dataset dataset = new system.data.dataset();
dataset.tables.add("treeview");
adapter.fill(dataset,"treeview");
foreach(system.data.datarow row in dataset.tables[0].rows)
{
node.append("/r/n tree.nodes[/""+ row["parentid"].tostring() + "_" + row["id"] + "/"] = /"");
node.append("text:" + row["text"].tostring().replace("/0xe",";") + ";");
node.append(row["hint"] != dbnull.value && row["hint"].tostring() != string.empty ? "hint:" + row["hint"].tostring().replace("/0xe",";") + ";" : string.empty);
node.append(row["icon"] != dbnull.value && row["icon"].tostring() != string.empty ? "icon:" + row["icon"].tostring().replace("/0xe",";") + ";" : string.empty);
node.append(row["data"] != dbnull.value && row["data"].tostring() != string.empty ? "data:" + row["data"].tostring().replace("/0xe",";") +server.urlencode(row["text"].tostring())+ ";" : string.empty);
node.append(row["url"] != dbnull.value && row["url"].tostring() != string.empty ? "url:" + row["url"].tostring().replace("/0xe",";") + ";" : string.empty);
node.append(row["target"] != dbnull.value && row["target"].tostring() != string.empty ? "target:" + row["target"].tostring().replace("/0xe",";") + ";" : string.empty);
node.append(row["method"] != dbnull.value && row["method"].tostring() != string.empty ? "method:" + row["method"].tostring().replace("/0xe",";") + ";" : string.empty);
node.append("/"");
}
str = node.tostring();
dataset.dispose();
}
finally
{
conn.close();
}
}
#region web 窗体设计器生成的代码
override protected void oninit(eventargs e)
{
//
// codegen: 该调用是 asp.net web 窗体设计器所必需的。
//
initializecomponent();
base.oninit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void initializecomponent()
{
this.load += new system.eventhandler(this.page_load);
}
#endregion
}
}
存储过程很简单:
create proc select_treeview_pwqzc
as
select * from treeview order by id
go
最大的网站源码资源下载站,
新闻热点
疑难解答