复制代码代码如下 :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<tête>
<title>Destroydrop » Javascripts » Arbre</title>
<link rel="StyleSheet" href="dtree.css" type="text/css" />
<script type="text/javascript" src="dtree.js"></script>
</tête>
<corps>
<div>
<p><a href="javascript: d.openAll();">tout ouvrir</a> | <a href="javascript: d.closeAll();">fermer tout</a></p>
<script type="text/javascript">
<!--
d = nouveau dTree('d');
d.add(0,-1,'Mon exemple d'arbre');
d.add(1,0,'Noeud 1','exemple01.html');
d.add(2,0,'Noeud 2','exemple01.html');
d.add(3,1,'Noeud 1.1','exemple01.html');
d.add(4,0,'Noeud 3','exemple01.html');
d.add(5,3,'Noeud 1.1.1','exemple01.html');
d.add(6,5,'Nœud 1.1.1.1','exemple01.html');
d.add(7,0,'Noeud 4','exemple01.html');
d.add(8,1,'Noeud 1.2','exemple01.html');
d.add(9,0,'Mes photos','example01.html','Photos que j'ai prises au fil des ans','','','img/imgfolder.gif');
d.add(10,9,'Le voyage en Islande','example01.html','Photos de Gullfoss et Geysir');
d.add(11,9,'Anniversaire de maman','exemple01.html');
d.add(12,0,'Corbeille','exemple01.html','','','img/trash.gif');
document.write(d);
//-->
</script>
</div>
<p></p>
</corps>
</html>
接下来我们可以分析 我们要是想让他动态的生成 我们 要怎么处理
我们可以看到如下代码是生成树的关键 :
复制代码代码如下 :
<div>
<p><a href="javascript: d.openAll();">tout ouvrir</a> | <a href="javascript: d.closeAll();">fermer tout</a></p>
<script type="text/javascript">
<!--
d = nouveau dTree('d');
d.add(0,-1,'Mon exemple d'arbre');
d.add(1,0,'Noeud 1','exemple01.html');
d.add(2,0,'Noeud 2','exemple01.html');
d.add(3,1,'Noeud 1.1','exemple01.html');
d.add(4,0,'Noeud 3','exemple01.html');
d.add(5,3,'Noeud 1.1.1','exemple01.html');
d.add(6,5,'Nœud 1.1.1.1','exemple01.html');
d.add(7,0,'Noeud 4','exemple01.html');
d.add(8,1,'Noeud 1.2','exemple01.html');
d.add(9,0,'Mes photos','example01.html','Photos que j'ai prises au fil des ans','','','img/imgfolder.gif');
d.add(10,9,'Le voyage en Islande','example01.html','Photos de Gullfoss et Geysir');
d.add(11,9,'Anniversaire de maman','exemple01.html');
d.add(12,0,'Corbeille','exemple01.html','','','img/trash.gif');
document.write(d);
//-->
</script>
</div>
我们是不是可以把上面的代码写到.cs文件里面呢! 是可以的
首先我们必须在数据库建立一张表
我们看下其实这里的这么多表字段 个人觉得pid子节点(如果是0那么就是根节点,1子节点,3子节点的子节点) nom要显示的名称 url连接地址titre icône icône Nom d'utilisateur Nom d'utilisateur Nom d'utilisateur Nom d'utilisateur Nom d'utilisateur我这里只是一个测试的所以就用了个字符串类型 下面我们来动态加载treeview
Il s'agit d'un ensemble de données et d'un ensemble de données DataTable.
复制代码代码如下 :
DataSet privé GetDt (nom d'utilisateur chaîne)
{
string strConn="server=ZHOUYUN;database=Mytest;uid=sa;pwd=123456";
SqlConnection conn = new SqlConnection(strConn);
chaîne strSql = chaîne.Format("
sélectionnez * dans l'arborescence où username='{0}'",username);
SqlDataAdapter da = new SqlDataAdapter(strSql, conn);
DataSetds = new DataSet();
da.Fill(ds);
retourner ds ;
}
Les fichiers js sont disponibles. Et .css ne contient pas de page Page.hearder.innerHTMl="" 你要倒入的文件名
我们来看代码
复制代码代码如下 :
arborescence publique vide()
{
//实力化一个长字符串类型
StringBuilder strbu = new StringBuilder();
//我们在生成一个保留静态文本的位置的类
Littéral lit = new Literal();
//这里就是我们刚才提到的要把.js et.cs文件倒入的位置
//page.Header.InnerHtml
// <head>这个之间</head>
Page.Header.InnerHtml = @"<
lien rel='StyleSheet' href='dtree.css' type='text/css'/>
<script type='text/javascript' src='dtree.js'></script>";//倒入结束
chaîne nom d'utilisateur = "zhangsan" ;
DataSet ds = GetDt(nom d'utilisateur.Trim());
DataTable dt = ds.Tables[0];
//我们现在开始把js文件放到长字符串类型里面
strbu.Append (@"<div class='dtree'>
<p><a href='javascript: d.openAll();'>tout ouvrir</a> |
<a href='javascript: d.closeAll();'>fermer tout</a></p>
<script type='text/javascript'>
<!--
d = nouveau dTree('d');
d.add(0,-1,'Mon exemple d'arbre');");//这里结束一段长字符穿类型
// Utilisation de DataTable
pour (int i = 1; i < dt.Rows.Count; i++)
{
//我们又开始添加长文件类型 大家这里注意了拼接字符穿
//的时候要仔细点
strbu.Append (@"
d.add(" + i + "," + dt.Rows["pid"] + ","'" +
dt.Rows["nom"] + "','" +
dt.Rows["url"] + "','" +
dt.Rows["target"] + "','" +
dt.Rows["icon"] + "','"+
dt.Rows["iconopen"]+"');");
}
//再次添加长文件类型
strbu.Append (@"document.write(d);
-->
</script>
</div> "); //
//现在我们保留静态文本的text值就等于 我们刚才的长文件类型的值
lit.Text = Convert.ToString(strbu);
//那么我们在想 我怎么把个段文本放到<body>
//<form>这个位置呢</form><boy>
form1.InnerHtml = "";
//La version de formulaire.cs est la version de form1.Controls.Add()
//他只能放静态文本所以我们把刚才长文件类型的值赋给了静态文本
//那么我们这里也就可以直接添加进来了
form1.Controls.Add(lit);
}