我是在asp.net中使用TreeView的,当点击节点时,就跳转到新的页面中,但是当节点太多的时候,TreeView加载就失败,
我是通过 for循环将节点信息显示出来的,也从网上找过资料,说是延迟加载,但是还是不太会,请各位帮帮忙啊,谢谢了!我的代码如下: private void Bind()
{
string rootStr = "标题";
TreeNode rootNode = new TreeNode(rootStr);
rootNode.Expanded = true;
rootNode.Value = "-1";
rootNode.Target = "bodyFrame";
//每当点击节点时,都跳转到一个页面当中
rootNode.NavigateUrl = "body.aspx?treeid=-1";
//循环的调用函数进行添加子节点
PopulateTreeViewFromSection("0", rootNode);
this.TreeView1.Nodes.Add(rootNode);
}
//向TreeView中添加一级子节点
private void PopulateTreeViewFromSection(string parentId, TreeNode parentNode)
{
DataSet ds = sectionBll.SelectAllSection();
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
TreeNode myNode = new TreeNode(ds.Tables[0].Rows[i][1].ToString());
if (i == 0)
{
myNode.Expanded = true;
}
myNode.Value = parentId;
myNode.Target = "bodyFrame";
//将树的结点编号、小区的结点编号传到body.aspx中
myNode.NavigateUrl = "body.aspx?treeid=0&xqid="+ds.Tables[0].Rows[i][0].ToString();
//循环调用函数添加子节点
PopulateTreeViewFromFloorName("1", myNode,Convert.ToInt32(ds.Tables[0].Rows[i][0].ToString()));
parentNode.ChildNodes.Add(myNode);
}
}
...........循环调用函数添加子节点
我是通过 for循环将节点信息显示出来的,也从网上找过资料,说是延迟加载,但是还是不太会,请各位帮帮忙啊,谢谢了!我的代码如下: private void Bind()
{
string rootStr = "标题";
TreeNode rootNode = new TreeNode(rootStr);
rootNode.Expanded = true;
rootNode.Value = "-1";
rootNode.Target = "bodyFrame";
//每当点击节点时,都跳转到一个页面当中
rootNode.NavigateUrl = "body.aspx?treeid=-1";
//循环的调用函数进行添加子节点
PopulateTreeViewFromSection("0", rootNode);
this.TreeView1.Nodes.Add(rootNode);
}
//向TreeView中添加一级子节点
private void PopulateTreeViewFromSection(string parentId, TreeNode parentNode)
{
DataSet ds = sectionBll.SelectAllSection();
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
TreeNode myNode = new TreeNode(ds.Tables[0].Rows[i][1].ToString());
if (i == 0)
{
myNode.Expanded = true;
}
myNode.Value = parentId;
myNode.Target = "bodyFrame";
//将树的结点编号、小区的结点编号传到body.aspx中
myNode.NavigateUrl = "body.aspx?treeid=0&xqid="+ds.Tables[0].Rows[i][0].ToString();
//循环调用函数添加子节点
PopulateTreeViewFromFloorName("1", myNode,Convert.ToInt32(ds.Tables[0].Rows[i][0].ToString()));
parentNode.ChildNodes.Add(myNode);
}
}
...........循环调用函数添加子节点
解决方案 »
- 求SESSION解决方案
- gridview模板列的数值怎么相加?
- 求鼠标点击一个连接显示绝对定位的div代码
- google地图根据地址返回坐标
- 如何传递服务端参数到客户端JS程序中?
- 请问 如何 去掉 dadagrid 左右两边的 边框 ???????????????????
- 继承一个button ,可是拖到页面的时候提示创建空件出错。。。。
- 大家写的程序中要自己记录日志吗?怎么记录?有人用过log4net吗?
- 我在application中设置了一个字符串变量,在.asp.cs文件中如何引用???
- 水晶报表,急需帮助,在线等待!
- 请问 用jQuery 如何实现 当鼠标移到热点后 显示层
- HttpContext.Current.RewritePath 重写路径 样式调用失败!
放在PopulateTreeViewFromFloorName("1", myNode,Convert.ToInt32(ds.Tables[0].Rows[i][0].ToString()));
上边,就是先添加再去递归
{
TreeNode tn=TreeView1.SelectedNode;
if (tn.ChildNodes.Count == 0)
{
DataTable dt=到数据刻读取数据;
if(dt.Rows.Count>0)
tn.ChildNodes.Add(.....)
}
}